IPP Architecture Reference Manual, Volume 1 talks about GetEnabledCpuFeatures() as a method that returns a set of flags, also described in ippcore.h. They are the same flags as in GetCpuFeatures(). 3295 or CDF (Hexadecimal) has the bit for SSE 4.2 set. That's how I know that all is well. It appears that I can get 7 (represents SSE 2 only) right after initialization, but things get better (SSE 4.2) when I run initialization code again.
Thanks for looking at this with me,
you should use ippInit() function only, don't use EnableCPU at all - this one has been already deprecated and does nothing. Also it is not clear for me from your code the purpose of calling InitCPU - you are mixing 2 different methods - CpuType (deprecated approach - don't use it) and CpuFeatures. All what you need - (1) call ippInit (2) then call GetCpuFeatures - all other calls in your initialization code are unnecessary
You're probably looking at a manual different from the one I am inspecting ( Document number A24968-036US). This particular manual does not specify deprecation in the same way as you do.
I am using redistributable DLLs.
If I simply run GetEnabledCpuFeatures() before and after a call to FFTGetSize_C_32fc(), I get 7 (SSE2 enabled) before and hex CDF (SSE 4.2 enabled) after the call. On a Sandy Bridge machine, I get hex FDF (AVX enabled).
Does this look like the correct way to do things?