我有一个C程序,我有几个无符号整数数组。我正在使用这个声明uint32_t
。
我想使用SIMD对存储在每个阵列中的数据执行一些操作。这就是我被卡住的地方,因为看起来大多数SSE和SSE2函数只支持float和double。
加载uint32_t
类型数据的最佳方式是什么?
答案 0 :(得分:1)
对于任何整数SSE类型,您通常使用_mm_load_si128
/ _mm_loadu_si128
:
uint32_t a[N];
__m128i v = _mm_loadu_si128((__m128i *)a);