«Искусственные люди» Samsung Neon уже работают на смартфонах
Пользователи получат их до Рождества
На выставке CES 2020 Samsung анонсировала продукт под названием Neon, который южнокорейский производитель окрестил «искусственным человеком». В описании на официальном сайте говорится, что это «виртуальное существо, созданное с помощью вычислений, которое выглядит и ведет себя как мы». Теперь же стало известно, что Neon будет доступен на смартфонах до конца года.
Объявление было сделано в Twitter Пранавом Мистри (Pranav Mistry), генеральным директором STAR (Samsung Technology and Advanced Research) Labs. Он поделился фотографиями устройства Neon Frame, который «переносит Neon в реальный мир».
После чего известный инсайдер под ником Ice Universe, который часто публикует достоверные сведения о новинках Samsung, спросил Пранава Мистри, когда Neon появится на смартфонах. В ответ на это Мистри ответил, что Neon уже работает на его смартфоне. В данный момент проект Neon проходит стадию тестирования, а рядовые пользователи смартфонов смогут познакомиться с «искусственными людьми» лично ещё до Рождества.
Neon — не голосовой помощник или робот. Скорее, это видеочат с компьютерным человеком, который выглядит максимально реалистично. Разработчики отмечают, что общение с подобными «искусственными людьми» будет выведено на совершенно новый уровень по сравнению с традиционными персональными помощниками, а время на поиск информации и правильного ответа у Neon составляет всего несколько миллисекунд.
Источник
Русские Блоги
ARM Neon Введение
Один. Введение
ARM Неон 128-битный SIMD (Single Instruction Multiple Data) расширенная структура для процессоров ARM Cortex-A и Cortex-R52 Series.
ARM процессор начинает только с нормальным регистром, а также основные операции основного типа данных могут быть выполнены. (Vector Floating Point) инструкция VFP вводится из ARMv5, который используется для ускорения операций с плавающей точкой. Так как ARMv7, директива неона официально представлена, а производительность NEON далеко супер VFP, поэтому команда VFP отбрасывается. Подобно инструкции MMX / SSE / AVX / FMA под процессоры Intel, инструкция NEON от ARM процессор также оптимизирован квантованием. Использование сцен включают, но не ограничиваясь ими:
- Гибкая передача видео (Flexible перекодирование видео)
- Звук распознавания, передовые речи, Advanced Audio Processing
- Улучшение видео захвата (Enhanced Захваченного видео)
- Computer Vision Ar / VR (Computer Vision)
- Машинное обучение и глубину обучения (Machine Learning и Deep)
- Игры и продвинутые интерфейсы человек-машина взаимодействия (Gaming, Advanced User Interface)
Два. Симд и SISD Введение
оSIMD (несколько данных в одной команде) и SISD (одна команда одного данных)Отказ Принимая инструкцию сложения в качестве примера, после того, как ЦП одной инструкции одиночных данных (SISD) декодируются с инструкцией того, память первого доступа исполнительного блока, получить первый операнд, то запоминающее устройство, получить второй операнд, а затем запрос и рассчитать. В ЦП типа SIMD, команда декодирует несколько компонентов выполнения одновременно, доступ к памяти, и все операнды получаются сразу. Эта особенность делает SIMD особенно подходит для операций с интенсивной обработкой данных, таких как мультимедийные приложения:
О SISD, SIMD детали будут описаны в Неон Programr.
Три. Неон Техническое введение
- Технология Неон вводится из ARMv7-A и наборы команд ARMv7-R, который был продлен до ARMV8-A и наборы команд ARMV8-R. Быть
- Технология Неон предназначена для улучшения мультимедиа людей, ускоряя мультимедийные коды, пользовательские интерфейсы, 2D / 3D графики и игр.
- Неон может также ускорить применение, например, аудио и видео обработки, передачи голоса и распознавания лиц, компьютерного зрения и глубокого обучения, за счет ускорения алгоритмов обработки сигналов и функций.
Неон(packed)Архитектура SIMD-регистр Неон считается элемент вектора одного и того же типа данных и поддерживает методику нескольких типов данных. В следующей таблице приведены типы данных, поддерживаемых при различных архитектурах:
ARMv7-A/R | ARMv8-A/R | ARMv8-A | |
AArch32 | AArch64 | ||
Floatin-point | 32-bit | 16-bit*/32-bit | 16-bit*/32-bit/64-bit |
Interger | 8-bit/16-bit/32-bit | 8-bit/16-bit/32-bit/64-bit | 8-bit/16-bit/32-bit/64-bit |
Инструкция неона выполняет ту же операцию на все векторные каналах. Исполнение операнда определяется типом данных, а также директива неон придерживается следующих правил:
- 16×8-bit, 8×16-bit, 4×32-bit, 2×64-bit integer operations
- 8×16-bit*, 4×32-bit, 2×64-bit** floating-point operations
Реализация технологии Неон может также поддерживать несколько команд параллельно:
IV. Как использовать неон
Есть множество способов использовать неон, который содержит использование неоновых библиотеки файлов, авто-векторизации, Неон Intrinsics, и коды Неон Ассамблеи. Конкретная ссылка Подробной информации:Neon Programmer’s Guide Version: 1.0
5. Простое введение использование
5.1- library
Самый простой способ использовать неон использовать библиотеку с открытым исходным кодом, который уже содержит Неон. ARM компьютеры для машинного обучения и компьютерного видения, ARM калькулятор основан на ARM CPU и GPU архитектуры и низкого уровня обучения для обработки изображений, компьютерного зрения и машинное обучение. коллекция функций. Для получения дополнительной информации см:https://developer.arm.com/technologies/compute-library
NE10 представляет собой С на основе библиотеки с открытым исходным кодом, устроенный ARM на Github, в том числе серии большинство процессов, обычно оптимизированного улучшения на ARM. NE10 является модульной открытой библиотекой источника, состоящая из нескольких небольших библиотек. Включают:
Математическая функция | Функция обработки сигнала | Функции обработки изображения | Физическая функция |
Vector Add | Floating & Fixed Point | Image Resize | Collision Detection |
Matrix Add | Complex-to-Complex FFT | Image Rotate | |
Vector Subtract | Floating & Fixed Point | ||
Vector Subtract From | Real-to-Complex FFT | ||
Matrix Subtract | FIR Filters | ||
Vector Multiply | FIR Decimator | ||
Vector Multiply-Accumulate | FIR Interpolator | ||
Matrix Multiply | FIR Lattice Filters | ||
Matrix Vector Multiply | FIR Sparse Filters | ||
Vector Divide | IIR Lattice Filters | ||
Vector Set | |||
Vector Length | |||
Vector Normalize | |||
Vector Absolute Value | |||
Vector Dot Product | |||
Vector Cross Product | |||
Matrix Determinant | |||
Matrix Inverse | |||
Matrix Transpose | |||
Matrix Identity |
- Libyuv является открытой библиотекой источника, который содержит преобразование и расширение возможности данных YUV.
- Skia является открытым исходным кодом 2D графическая библиотека, используемая как Google Chrome и Chrome OS, Android, Mozilla Firefox и Firefox OS и многих других графического движка
5.2 Авто векторизации (Автовекторизация)
Автоматическая векторизация поддерживается ARM компилятор, который автоматически использует неоновые функции Особенности поддержки.:
5.3-Compiler Intrinsics
Неон Intrinsics функция вызывается с компилятором с соответствующей инструкцией или неоновой последовательностью команд Neon. Контроль обеспечивается функцией внутренней почти столько же, сколько приготовленная языка, но назначение регистра остается компилятор, так что разработчик может сосредоточиться на алгоритме. Он также выполняет планирование команд для удаления паузы трубопроводную указанного целевого процессора. Это приведет к исходному коду, который проще в обслуживании, чем на ассемблере. Внутренняя функция Неон поддерживается ARM компилятором, GCC и LLVM. Конкретная ссылка:https://developer.arm.com/architectures/instruction-sets/simd-isas/neon/intrinsics
- Neon intrinsic example
5.4-Assembly code
Для очень высокой производительности вручную закодированные неоновые ассемблеры вручную — лучший способ испытать обширные программисты. GNU Assembler (газ) и компилятор ARM Оценка цепочки инструментов (Armasm) Поддержка вспомогательных инструкций NENO.
Sixheth.tools.
ARM DS-5 Studio Studio представляет собой концептуальный комплект, разработанный на основе платформы ARM для программного обеспечения C / C ++. DS-5 полностью поддерживает программирование и отладку неоновой архитектуры.
Debugger DS-5 предоставляет полную функцию отладки неоновых инструкций, а также визуализацию его архитектурных регистров. Отладчик DS-5 поддерживает все файлы и процессоры архитектурных конфигураций ARM. Быть
7.Neon ecosystem
Neon имеет широкий спектр использования в полях, показанных в следующей таблице. Он содержит множество кроссплатформенных проектов с открытым исходным кодом:
Video codecs: | Audio codecs: | Voice and speech codecs: | Audio enhancement algorithms: | Computer Vision | Machine and deep learning |
VP9 OTT encoder, VP9 Consumer encoder/decoder | MP3 encoder/decoder | G.711 | Echo cancellation | Canny Edge detection | On-device object recognition |
H.264 (AVC) encoder/decoder | MPEG-2 layer I & II encoder/decoder | G.722, G.722.1, G.722.2 | Noise Reduction | Harris Corner | On-device scene recognition |
MPEG4 SP/ASP encoder/decoder | MPEG-1 layer III audio encoder | G.723.1 | Beam Forming | ORB | Human pose recognition |
MPEG2 decoder | G.726 | Comfort Noise | Convolution filter | Defect detection | |
H.263 decoder | HE-AACv1, v2 encoder/decoder | G.727 | AudioZoom | Erosion/Dilation | |
WMA Standard encoder/decoder | G.728 | Equalization | Face detection | ||
WMA Pro, WMA Lossless decoder | G.729, G.279A, G.729B | Wind noise reduction | Pedestrian detection | ||
SBC Bluetooth encoder/decoder | G.729AB | Automatic Gain Control | Fast9/Fast12 corner detection | ||
OggVorbis encoder/decoder | AMR Narrowband, Wideband, Wideband+ | Voice Activity Detection | Object tracking | ||
FLAC encoder/decoder | GSM-HR, GSM-ER, GSM-EFR | Key word spotting | Lane departure | ||
Dolby® Digital AC-3 encoder/decoder | Opus | Voice trigger | Connected components | ||
Dolby® Digital eAC-3 decoder | iLBC | Voice biometrics | |||
Dolby® MS10/MS11 Multistream | SILK | Speaker verification | |||
Dolby® Digital Plus 5.1/7.1 Consumer decoder | SPEEX | ||||
Dolby® Digital 5.1 Creator Consumer encoder | MELPe | ||||
Dolby® Pro Logic I & II encoder/decoder | |||||
iSAC encoder/decoder | |||||
CELT encoder/decoder | |||||
DTS core encoder/decoder | |||||
DAB+ encoder/decoder | |||||
Dolby® Mobile encoder/decoder | |||||
Dolby® TrueHD consumer decoder | |||||
Dolby® UDC encoder/decoder |
8.Resources
8.1 video
8.2 Blogs
8.3 Arm Compilers
8.4 Software optimization Guides
Рука знает о некоторых рекомендациях по оптимизации программного обеспечения для публикации процессоров. Эти руководящие принципы предоставляют продвинутую информацию о трубопроводе, характеристиках работы по эксплуатации и специальной производительности. Эта информация особенно полезна для программистов, использующих Neon.
Источник