开发者

SIMD version check

开发者 https://www.devze.com 2023-01-21 02:44 出处:网络
I am using Intel Core2Duo E4500 processor. 开发者_运维问答It is supposed to have SSE3, SSSE3 facilities. But if I try to use them in programs it shows the following error \"SSE3 instruction set not en

I am using Intel Core2Duo E4500 processor. 开发者_运维问答It is supposed to have SSE3, SSSE3 facilities. But if I try to use them in programs it shows the following error "SSE3 instruction set not enabled"

Any ideas?


On Linux, have a look at the flags field of the output of cat /proc/cpuinfo


Try adding this gcc command line options:

-march=core2 -msse3

And probably is also a good idea to turn on sse optimizations for floating point operations:

-mfpmath=sse


Use CPU-Z to check for available instruction sets.

If you're using Visual Studio, there's an option in C/C++ -> Code Generation -> Enable Enhanced Instruction Set.

Here's how to enable it in gcc.

From the above link:

-msse3
-mssse3


If you compile on the same machine where you will be executing your code, with any recent gcc you should be able to use -march=native to take advantage of all your CPU features. It should tell you during compilation then, if you are using unsupported instructions in your asm.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号