Результаты поиска по запросу "sse"

0 ответов

пользовательский расширенный векторный тип: например, float4 b = v.xxyz;

OpenCL, GCC и Clang имеют убедительный векторный типрасширения [http://clang.llvm.org/docs/LanguageExtensions.html#vectors-and-extended-vectors] . Одна из функций, которые мне нравятся больше всего, - это возможность совершать извращение ...

4 ответа

Одно продолжение ... использование однопоточного 128-битного векторного кода «rgb_to_bgrx_sse», приведенного выше, дало результаты в диапазоне 11 мс для буферов ввода-вывода того же размера. vImage является явным победителем здесь.

должение некоторых предыдущих вопросов о преобразовании RGB в RGBA и ARGB в BGR я бы хотел ускоритьRGB в BGRAпреобразование сSSE, Предположим, 32-битный компьютер, и хотел бы использоватьвстроенные функции, У меня возникают трудности с ...

6 ответов

Инструкции SSE: какие процессоры могут выполнять атомные операции памяти 16B?

Рассмотрим инструкцию SSE с одним доступом к памяти (одно чтение или одна запись, а не чтение + запись) на процессоре x86. Эта команда обращается к 16 байтам (128 битам) памяти, а доступ к ячейке памяти выравнивается до 16 байтов. В документе ...

ТОП публикаций

2 ответа

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

Мой код на C ++ использует SSE, и теперь я хочу улучшить его для поддержки AVX, когда он будет доступен. Поэтому я определяю, когда доступен AVX, и вызываю функцию, которая использует команды AVX. Я использую Win7 SP1 + VS2010 SP1 и процессор с ...

5 ответов

Оптимизация сжатия массива

Допустим, у меня есть массивk = [1 2 0 0 5 4 0] Я могу вычислить маску следующим образомm = k > 0 = [1 1 0 0 1 1 0] Используя только маску m и следующие операции Сдвиг влево / вправоИ / илиДобавить / Вычесть / MultiplyЯ могу сжать к ...

2 ответа

Является ли переменная __m128i нулевой?

Как мне проверить, если__m128i переменная имеет какое-либо ненулевое значение на процессорах SSE-2 и более ранних?

3 ответа

Умножение SSE 16 x uint8_t

Я хочу умножить с SSE4__m128i объект с 16 беззнаковыми 8-битными целыми числами, но я мог найти только встроенную функцию для умножения 16-битных целых чисел. Нет ничего такого как_mm_mult_epi8?

8 ответов

Как выровнены векторные данные?

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

3 ответа

добавление компонентов регистра SSE

Я хочу добавить четыре компонента регистра SSE, чтобы получить один float. Вот как я это делаю сейчас: float a[4]; _mm_storeu_ps(a, foo128); float x = a[0] + a[1] + a[2] + a[3];Есть ли инструкция SSE, которая непосредственно достигает этого?

2 ответа

Как мне преобразовать _m128i в неподписанное int с SSE?

Я сделал функцию для постеризации изображений. // =( #define ARGB_COLOR(a, r, g, b) (((a) << 24) | ((r) << 16) | ((g) << 8) | (b)) inline UINT PosterizeColor(const UINT &color, const float &nColors) { __m128 clr = _mm_cvtepi32_ps( ...