Результаты поиска по запросу "sse"
Неоптимизированный макро-путь связан с тем, что некоторые инструкции требуют немедленного постоянного аргумента, который в противном случае было бы проблематичным получить при -O0 (необходимо встроить функцию, а затем распространить значение).
инство компиляторов C ++ поддерживают инструкции SIMD (SSE / AVX) с такими интрижками, как _mm_cmpeq_epi32Моя проблема в том, что эта функция не помечена какconstexprхотя "семантически" нет причин, чтобы эта функция неconstexpr так как это ...
Как сложить __m256 по горизонтали?
Я хотел бы суммировать компоненты по горизонтали__m256 вектор с использованием инструкций AVX. В SSE я мог бы использовать _mm_hadd_ps(xmm,xmm); _mm_hadd_ps(xmm,xmm);чтобы получить результат в первом компоненте вектора, но это не масштабируется ...
Как умножить два кватерниона с минимальными инструкциями?
Подумав немного, я придумал следующий код для умножения двух кватернионов с использованием SSE:
godbolt.org/g/rt67UM
олее простое представление моей проблемы, я хочу преобразовать значение с плавающей запятой в определенный тип v4si (я хочу использовать SIMD Operation для о...
Очистить верхние байты __m128i
Как мне очистить16 - i старшие байты__m128i? Я попробовал это; это работает, но мне интересно, есть ли лучший (короче, быстрее) способ: int i = ... // 0 < i < 16 __m128i x = ... __m128i mask = _mm_set_epi8( 0, (i > 14) ? -1 : 0, (i > 13) ? -1 : ...