Вопросы по теме 'neon'

Как изменить порядок векторных данных с помощью встроенных функций ARM Neon?
Это особенно связано с кодированием ARM Neon SIMD. Я использую инстринсики ARM Neon для определенного модуля в видеодекодере. У меня есть векторизованные данные: В регистре Neon есть четыре 32-битных элемента, скажем, Q0, размер которых...
6681 просмотров
schedule 06.06.2022

Как использовать встроенные функции умножения и накопления в ARM Cortex-a8?
как использовать встроенные функции Multiply-Accumulate, предоставляемые GCC? float32x4_t vmlaq_f32 (float32x4_t , float32x4_t , float32x4_t); Кто-нибудь может объяснить, какие три параметра я должен передать этой функции. Я имею в виду...
14486 просмотров
schedule 12.03.2022

CodeSourcery дает ошибку компиляции: недостающие биты / c ++ config.h
в своем проекте я использую библиотеку Eigen C ++ для линейной алгебры. ТОЛЬКО , когда я включаю флаги векторизации (-mfpu = neon -mfloat-abi = softfp) для ARM NEON, я получаю сообщение об ошибке компилятора - c ++ config.h нет такого файла или...
2490 просмотров
schedule 24.01.2024

ARM NEON: В чем разница между vld4_f32 и vld4q_f32?
Я не могу понять разницу между vld4_f32 и vld4q_f32 в инструкциях ARM NEON. Путаница началась, когда я поднял свой уровень кодирования и начал смотреть на инструкции по сборке, а не на менее информативные встроенные функции. Причина, по...
3626 просмотров
schedule 29.11.2022

ARM Cortex-A8: сколько байтов извлекается при одном чтении памяти?
Я пытаюсь улучшить свой проект обработки изображений, работающий на процессоре ARM cortex-a8. Я обращался к 8-битным данным изображения в градациях серого из памяти. В моей функции прямо сейчас я обращаюсь к значению отдельного пикселя, байт за...
1182 просмотров
schedule 29.09.2022

Разделить на число с плавающей запятой, используя встроенные функции NEON
Я обрабатываю изображение на четыре пикселя в то время, это на armv7 для приложения Android. Я хочу разделить вектор float32x4_t на другой вектор, но числа в нем варьируются примерно от 0.7 до 3.85 , и мне кажется, что единственный способ...
6131 просмотров
schedule 16.07.2022

сравнение с поплавками в неоновых внутренностях
Я думаю, что это глупая проблема, но я пытался в течение дня решить ее без везения, так что вот. у меня есть регистр из четырех векторов (float32x4), и я хочу сделать какой-то процесс для некоторых из них, а другой я хочу установить на 0....
1220 просмотров
schedule 11.04.2023

Преобразование RGB в оттенки серого с помощью неона руки
Я пытаюсь эффективно преобразовать rgb в оттенки серого, поэтому я получил функцию от здесь , где объясняется, как преобразовать rgba в оттенки серого. Теперь я пытаюсь сделать то же самое, но только с rgb. Я изменил некоторые вещи, но, похоже, это...
2890 просмотров
schedule 22.02.2023

Некоторые сомнения в оптимизации неонового кода
Я написал неоновый код на ассемблере и стремился к максимальной оптимизации. Хотя цифры кажутся удовлетворительными, мне было интересно понять возможности дальнейшей оптимизации. Затем я наткнулся на онлайн-инструмент, который помогает подсчитывать...
1288 просмотров
schedule 13.10.2023

Загрузка 8-битных значений с использованием NEON/ARM
Я пытаюсь загрузить массив значений char в регистры NEON, а затем обрабатывать их как 16-битные или 32-битные целые значения. Итак, что-то вроде этого... void SubVector(short* c, const unsigned char* a, const unsigned char* b, int n) {...
2801 просмотров
schedule 22.03.2022

Быстрое размытие по Гауссу на изображении без знака — ARM Neon Intrinsics — iOS Dev
Может ли кто-нибудь сказать мне быструю функцию для поиска размытия изображения по Гауссу с использованием маски 5x5. Мне это нужно для разработки приложений для iOS. Я работаю непосредственно с памятью изображения, определенного как unsigned...
3065 просмотров
schedule 15.05.2022

ARM NEON Assembler — использование и понимание
Я новичок в программировании на ассемблере и NEON. Моя задача — преобразовать часть алгоритма из C в ARM Assembler, используя инструкции NEON. Алгоритм берет массив int32, загружает различные значения из этого массива, выполняет битовый сдвиг и Xor...
6857 просмотров
schedule 23.09.2022

преобразование глубины с помощью неоновых встроенных элементов ARM
Я пытаюсь осмыслить внутренние особенности NEON и решил, что могу начать с примера и задать несколько вопросов. В этом эксперименте я хочу преобразовать 32-битный RGB в 16-битный BGR. Что было бы хорошим началом в преобразовании следующего кода...
691 просмотров
schedule 12.02.2023

ARM Neon Assembler — работа с переполненными регистрами
Я хочу сделать следующее: у меня есть 8 значений (8 x 1 байт) в неоновом D-регистре (= 64 бит). Теперь мне нужно сдвинуть каждое значение 3 влево, но я не хочу терять биты. После этого мне нужно добавить к каждому значению в векторе одно и то же...
1187 просмотров
schedule 19.05.2024

Отладка ARM NEON для Android NDK
NDK (Android Native development Kit) для ARM поставляется с цепочкой инструментов gcc и GNU utils, включая устаревшую GDB. Однако GDB, по-видимому, не может показать содержимое регистров в расширениях VFP или NEON SIMD, то есть при отладке программы...
1676 просмотров
schedule 17.05.2022

Векторизованное округление с плавающей запятой с использованием NEON
У меня есть регистр NEON, заполненный float32 . Я хотел бы округлить их до ближайшего целого числа без необходимости передачи обратно на основной процессор. Инструкции NEON по преобразованию float32 в uint32 просто усекаются, поэтому, например....
1756 просмотров
schedule 03.03.2022

C против ассемблера против производительности NEON
Я работаю над приложением для iPhone, которое выполняет обработку изображений в реальном времени. Одним из первых шагов в его конвейере является преобразование изображения BGRA в оттенки серого. Я попробовал несколько разных методов, и разница в...
1932 просмотров
schedule 02.10.2022

Как программы Android используют NEON SIMD?
Я немного изучил возможности процессора и наткнулся на NEON. Из того, что я читал, похоже, что NEON требует специального программирования, чтобы использовать это, но это полностью правда, или процессоры, у которых есть эта функция, все еще находят...
4112 просмотров
schedule 08.06.2022

Эффективная неоновая реализация отсечения
Внутри цикла я должен реализовать своего рода отсечение if ( isLast ) { val = ( val < 0 ) ? 0 : val; val = ( val > 255 ) ? 255 : val; } Однако это отсечение занимает почти половину времени выполнения цикла в Neon. Вот...
2858 просмотров
schedule 01.09.2022

Поддержка ARM NEON Intrisics в Visual Studio
Какова самая ранняя версия Visual Studio (C++), которая поддерживает встроенные компоненты ARM NEON, если таковые имеются?
1281 просмотров
schedule 22.05.2023