如何使用SSE(1,2,3,4)优化?

jma*_*erx 2 c c++ compiler-construction optimization

我想知道简单地使用sse/sse2编译我的msvc项目是否会产生任何影响.我做的例如矢量标准化和点积,但我用数学做这些,而不是任何具体的功能.有没有像sse_dot()和sse_normalize()那样我应该用来实现,或者编译器会知道吗?

谢谢

And*_*nan 6

据我了解,使用sse2编译器选项将导致编译器使用标量非向量sse2指令代替普通的fpu代码.我不认为它会做任何矢量化.sse2标量的东西肯定比fpu快.

要使用向量单元,您需要直接使用内在函数(xmmintrin.h)或使用第三方库.如果你只是做简单的矢量/矩阵渲染,那么Bullet SDK就有一个优化的矢量数学库,它不错.IIRC还对DirectX/XNAmath lib进行了优化.

如果这两者都不合适,Google应该提出一些替代方案.