#arm_neon — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #arm_neon, aggregated by home.social.
-
a[mask] = f(a[mask]) на NEON. compress вместо blend
Блендинг считает функцию для всех элементов и сохраняет только нужные. Для дешевых функций это оптимально, но на pow проигрывает в несколько раз. Можно сжать подходящие элементы, посчитать только их и разжать обратно. Разбираемся, где граница, и делаем адаптивный алгоритм.
https://habr.com/ru/articles/1063732/
#arm_neon #simd #apple_silicon #c++ #интринсики #оптимизация #aarch64
-
Stream compaction на NEON. Векторизуем copy_if
Как разогнать copy_if на NEON в 30+ раз без единой ветки в горячем цикле — эмулируем compress инструкцию, которой в NEON нет, через table lookup и немного битовой магии.
-
[Перевод] Процессоры ARM: смешиваем NEON с SVE — и забава, и польза
Большинство мобильных устройств используют 64‑битные ARM‑процессоры. Однако они все заметнее и на серверах. Их число неуклонно растет, и все больше компаний, включая таких гигантов, как Amazon и Microsoft, также переходят на 64‑битные ARM. У этих процессоров есть специальные инструкции — ARM NEON. Они обеспечивают параллелизм, известный как SIDM — Single Instruction, Multiple Data, то есть «Инструкция одна, данных множество». Например, можно сравнить шестнадцать одних значений с шестнадцатью других с помощью всего одной такой инструкции. Некоторые из самых последних процессоров ARM также поддерживают еще более продвинутый набор команд — SVE, Scalable Vector Extension, или «Масштабируемое векторное расширение». Прогресс не останавливается — и вот уже появились спецификации SVE 2 и SVE 2.1.