Error "SSE3 instruction set not enabled" when using VOLK

Hello,

I am trying to use the volk_32fc_x2_multiply_conjugate_32fc_a_sse3() in
my
signal processing code. However, when I compile my code, it was told
that Error “SSE3 instruction set not enabled” and the intrinsics within
this VOLK method are not recognized at all.
It was told that the -msse3 option is needed in gcc/g++ compilation to
enable the support on sse3. But I don’t know where I can specify this
option. I did not find related content in the CMakelist of other blocks
who
support sse, like some filters.

Also, my CPU is Core I7-2600, which is suppose to support SSE3.

Thanks,

Alex,
Dreams can come true just believe.

On Mon, Oct 22, 2012 at 6:53 PM, Alex Z. [email protected]
wrote:

Also, my CPU is Core I7-2600, which is suppose to support SSE3.

Thanks,

Alex,
Dreams can come true just believe.

Alex,

VOLK is not intended for you to explicitly call a kernel of a
particular type. You want to call the abstract verson
(volk_32fc_x2_multiply_conjugate_32fc_a) and let the VOLK runtime
decide what the best available proto-kernel is (this is determined
from your volk_config file after you run volk_profile). That will make
sure that you are using a proto-kernel that you properly compiled and
that can run on your processor.

To check more into why SSE3 is not available on your machine, take a
look at the output of cmake to see what it tells you. You can look to
see what the value of “have_msse3” is in the CMakeCache.txt file.

During make, you can run ‘make VERBOSE=1’ to get the full compile
line, too, where you can see what flags are actually being used by GCC
when compiling.

Tom

Thanks Tom and Nick, it works now, by just calling the abstract method
name.

On Tue, Oct 23, 2012 at 9:21 AM, Tom R. [email protected] wrote:

It was told that the -msse3 option is needed in gcc/g++ compilation to

from your volk_config file after you run volk_profile). That will make

Tom

Alex,
Dreams can come true just believe.