Результаты поиска по запросу "sse"
SSE медленнее чем FPU?
У меня есть большой кусок кода, часть тела которого содержит этот кусок кода: result = (nx * m_Lx + ny * m_Ly + m_Lz) / sqrt(nx * nx + ny * ny + 1);который я векторизовал следующим образом (все ужеfloat): __m128 r = _mm_mul_ps(_mm_set_ps(ny, ...
Общие методы SIMD
Где я могу найти информацию о распространенных трюках SIMD? У меня есть набор инструкций, и я знаю, как написать не хитрый SIMD-код, но я знаю, что SIMD теперь намного мощнее. Может содержать сложный условный код без ответвлений. Например ...
SSE: преобразовать короткое целое в число с плавающей точкой
Я хочу преобразовать массив беззнаковых коротких чисел для плавания с использованием SSE. Скажем __m128i xVal; // Has 8 16-bit unsigned integers __m128 y1, y2; // 2 xmm registers for 8 float valuesЯ хочу первые 4 uint16 в y1 и следующие 4 uint16 ...
SSE загружает целые в __m128
Каковы особенности GCC для загрузки 4ints в__m128 и 8 дюймов в__m256 (Выровнены / невыровненной)? Что оunsigned ints?
Самый быстрый способ сделать горизонтальную векторную сумму с помощью инструкций AVX [дубликат]
На этот вопрос уже есть ответ здесь: Получить сумму значений, хранящихся в __m256d с помощью SSE / AVX [/questions/49941645/get-sum-of-values-stored-in-m256d-with-sse-avx] 2 ответаУ меня есть упакованный вектор из четырех 64-битных значений с ...
_mm_shuffle_ps () эквивалент для целочисленных векторов (__m128i)?
_mm_shuffle_ps() intrinsic позволяет чередовать входы с плавающей запятой в низкие 2 поплавка и высокие 2 поплавка выхода. Например: R = _mm_shuffle_ps(L1, H1, _MM_SHUFFLE(3,2,3,2))приведет к: R[0] = L1[2]; R[1] = L1[3]; R[2] = H1[2]; R[3] = ...
Как сложить __m256 по горизонтали?
Я хотел бы суммировать компоненты по горизонтали__m256 вектор с использованием инструкций AVX. В SSE я мог бы использовать _mm_hadd_ps(xmm,xmm); _mm_hadd_ps(xmm,xmm);чтобы получить результат в первом компоненте вектора, но это не масштабируется ...
вывести переменную __m128i
Я пытаюсь научиться кодировать с использованием встроенных функций и ниже код, который делает дополнение compiler used: icc #include<stdio.h> #include<emmintrin.h> int main() { __m128i a = _mm_set_epi32(1,2,3,4); __m128i b = ...
Реверсировать регистр AVX, содержащий двойные числа, используя единственный внутренний AVX
Если у меня есть регистр AVX с 4 двойными в них, и я хочу сохранить обратное в другом регистре, возможно ли это сделать с помощью одной встроенной команды? Например: если бы у меня было 4 числа с плавающей точкой в регистре SSE, я мог бы ...
Примеры и учебные пособия по Intel SSE и AVX [закрыто]
Есть ли хорошие учебники или примеры по C / C ++ для изучения инструкций Intel SSE и AVX? Я нашел несколько на сайтах Microsoft MSDN и Intel, но было бы здорово понять это с основ.