x86-64 的 SSE 指令(向量指令)在哪里优于普通指令。因为我看到的是执行 SSE 指令所需的频繁加载和存储正在抵消我们因向量计算而获得的任何收益。那么有人可以给我一个示例 SSE 代码,它的性能比普通代码更好。
可能是因为我分别传递每个参数,像这样......
__m128i a = _mm_set_epi32(pa[0], pa[1], pa[2], pa[3]);
__m128i b = _mm_set_epi32(pb[0], pb[1], pb[2], pb[3]);
__m128i res = _mm_add_epi32(a, b);
for( i = 0; i < 4; i++ )
po[i] = res.m128i_i32[i];
有没有一种方法可以一次传递所有 4 个整数,我的意思是一次传递整个 128 个字节pa
?res.m128i_i32
并一次性分配po
?