Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Steve_Nuchia
New Contributor I
60 Views

universal binaries (no SSE) -- possible?

I am looking at ways to improve performance on a large legacy code base. Converting explicit for-loops doing standard linear algebra to MKL looks like an option, but we sell (conventianal commercial software business model) to a global market and I am concerned about maintaining the ability to run on older x86+x87 architecture platforms -- IE machines that do not have SSE2.

The platform requirements notes do not explicity say it won't work, and I got my hopes up when I saw "celeron" listed as a supported CPU, but of course there are many Celerons and the name currently describes a machine based on the Core 2 architecture, according to wikipedia.

So, what's the take-home on this? Is the 32-bit MKL for windows compiled to operate correctly all the way back to the PII (say) or am I out of luck?
0 Kudos
1 Reply
60 Views

When you link with MKL, it will have code paths for various architectures, and in runtime, it will detect the CPU features and dispatch to the correct code path to take advantage of the platform your user runs the application.

There are some flags in Intel compilersto specify automatic dispatcher to various instruction setsor to some specificinstructions sets. Please see this article onIntel compiler options on this.

http://software.intel.com/en-us/articles/performance-tools-for-software-developers-intel-compiler-op...

--Vipin