Вопросы с тегом 'sse'

SSE (потоковые SIMD-расширения) был первым из многих аналогично названных векторных расширений для набора команд x86. На данный момент SSE чаще всего представляет собой привязку для векторных команд x86 в целом, а не ссылку на SSE без SSE2, SSE3 и т.д.
5
ответов

Почему SSE скалярный sqrt (x) медленнее, чем rsqrt (x) * x?

Я профилировал часть нашей основной математики на Intel Core Duo, и, глядя на различные подходы к квадратному корню, я заметил что-то странное: используя скалярные операции SSE, быстрее брать ответный квадратный корень и умножить его на получение sqr...
задан 07 окт. '09 в 2:45
5
ответов

Заголовочные файлы для x86 SIMD intrinsics

Какие файлы заголовков предоставляют встроенные функции для разных наборов инструкций для SIM-карт x86 (MMX, SSE, AVX,...)? Невозможно найти такой список в Интернете. Исправьте меня, если я ошибаюсь.
задан 27 июня '12 в 17:44
8
ответов

Разве компиляторы JVM JIT генерируют код, который использует векторизованные инструкции с плавающей запятой?

Скажем, узким местом моей Java-программы действительно являются некоторые жесткие петли, чтобы вычислить кучу векторных точечных продуктов. Да, я профилировал, да, это узкое место, да, это важно, да, что именно так алгоритм, да, я запустил Proguard д...
задан 28 мая '12 в 15:48
2
ответов

В чем смысл "не временных" обращений к памяти в x86

Это вопрос несколько низкого уровня. В сборке x86 есть две инструкции SSE: MOVDQA xmmi, m128 и MOVNTDQA xmmi, m128 В Руководстве для разработчиков программного обеспечения IA-32 говорится, что NT в MOVNTDQA означает Non-Temporal, и в против...
задан 31 авг. '08 в 23:18
5
ответов

Ссылка на встроенные функции SSE

Кто-нибудь знает ссылку, в которой перечислены функции встроенных функций SSE для gcc, то есть функции в файлах заголовка < * mmintrin.h > ? Спасибо.
задан 23 авг. '11 в 9:07
3
ответов

Как проверить, поддерживает ли процессор набор инструкций SSE3?

Является ли следующий код действительным для проверки того, поддерживает ли процессор набор инструкций SSE3? Использование функции IsProcessorFeaturePresent(), по-видимому, не работает в Windows XP (см. http://msdn.microsoft.com/en-us/library/ms724...
задан 25 мая '11 в 11:49
1
ответ

Как денормализованные поплавки обрабатываются на С#?

Просто прочитайте эту увлекательную статью о замедлениях 20x-200x, которые вы можете получить на процессорах Intel с денормализованными поплавками (числа с плавающей запятой очень близки к 0). Существует опция с SSE, чтобы округлить их до 0, восстан...
задан 07 апр. '14 в 17:38
4
ответов

Использование встроенных AVX вместо SSE не улучшает скорость - почему?

Я использую встроенные функции Intel SSE в течение некоторого времени с хорошей производительностью. Следовательно, я ожидал, что возможности AVX еще больше ускорят мои программы. К сожалению, до сих пор это было не так. Наверное, я делаю глупую ошиб...
задан 19 янв. '12 в 13:47
2
ответов

Использование инструкций процессора AVX: низкая производительность без "/arch: AVX"

В моем коде на С++ используется SSE, и теперь я хочу улучшить его, чтобы поддерживать AVX, когда он доступен. Поэтому я обнаруживаю, что AVX доступен и вызывает функцию, использующую команды AVX. Я использую Win7 SP1 + VS2010 SP1 и процессор с AVX. ...
задан 20 окт. '11 в 20:40
3
ответов

Начало работы с SSE

Я хочу узнать больше об использовании SSE. Какими способами можно научиться, помимо очевидного чтения Руководства для разработчиков программного обеспечения Intel® 64 и IA-32? В основном мне интересно работать с встроенными функциями GCC X86.
задан 07 сент. '09 в 17:42
8
ответов

Почему strcmp не оптимизирован SIMD?

Я попытался скомпилировать эту программу на компьютере x64: #include <cstring> int main(int argc, char* argv[]) { return ::std::strcmp(argv[0], "really really really really really really really really really" "really really really r...
задан 27 окт. '14 в 13:59
7
ответов

Как определить, совпадает ли память? (* тестирование * для выравнивания, не выравнивание)

Я новичок в оптимизации кода с инструкциями SSE/SSE2, и до сих пор я не очень далеко. Насколько мне известно, общая функция, оптимизированная по SSE, будет выглядеть так: void sse_func(const float* const ptr, int len){ if( ptr is aligned ) {...
задан 14 дек. '09 в 2:15
2
ответов

Как использовать инструкции Fused Multiply-Add (FMA) с SSE/AVX

Я узнал, что некоторые процессоры Intel/AMD могут делать одновременное умножение и добавлять с помощью SSE/AVX: FLOPS за цикл для песчаного моста и haswell SSE2/AVX/AVX2. Мне нравится знать, как сделать это лучше всего в коде, и я также хочу знать,...
задан 10 апр. '13 в 21:02
8
ответов

Как выравниваются векторные данные?

Если я хочу обрабатывать данные в std::vector с SSE, мне нужно 16-байтовое выравнивание. Как я могу это достичь? Нужно ли мне писать собственный распределитель? Или распределитель по умолчанию уже выравнивается до 16 байтовых границ?
задан 10 дек. '11 в 14:38
1
ответ

Почему мой ручной настроенный код с поддержкой SSE настолько медленный?

Короче говоря: я разрабатываю приложение для обработки изображений с интенсивным вычислением на С++. Он должен рассчитать множество вариантов искажений изображения на небольших блоках пикселей, извлеченных из больших изображений. Программа работает н...
задан 31 марта '13 в 1:41