I'm making software - only C++ code - that I want to compile for:
- Windows 32/64
- Linux 32/64
- Mac (no idea yet what people are using there - new to me)
I will also use IPP, some 6.x version.
Based on performance tests that I did some time ago, I need a relatively old version of the C++ compiler - 10.1. Anything that I've tested since that (11.0, 11.1) produces code that's about 25% slower - on my project. For one small library that I need to occasionally build for someone else I need version 11.1 due to compatibility reasons - that's only on Windows, and only for 32 bit.
Based on what I found so far, it looks like I need the Intel C++ compiler (approx. 450 euro) and IPP (approx. 150 euro) license.
1. Are the 10.1 versions for all these systems still available for download?
2. Do I need separate licenses for 32 and 64 bit?
3. Do I need separate licenses for version 10.1 and 11.1 on Windows (32 bit)?
4. Do I need separate licenses for the different OS's?
Finally, since 10.1 is a pretty old version, is there a discount for this? I found some sites that are selling cheap 8.x/9.0 licenses, couldn't find any 10.1 licenses though.
If I only need a single license for this (well, 2, compiler and IPP) it's fine, otherwise if there's no discount I cannot justify buying Linux and MAC licenses until I get a decent customer base on those OS's, and I'll have to switch to gcc instead - which generates noticably slower executables.
In my experience, most performance losses in 12.x may be overcome by switching to CEAN and Cilk+ reducer notation, although I wouldn't advise CEAN where you don't need it.
Thresholds for inter-procedural optimizations varied from one version to the next, and may be controlled by command line options. They shouldn't be as critical when you use /Qansi-alias and restrict pointers.
Specific cases of reduced performance in 12.1 relative to previous versions are fair game for reports with reproducers on premier.intel.com or on this forum.
The performance difference occurs even on a single-core system, whatever changed seems to affect the numer of instructions or memory accesses itself, not parallelization (which I do manually for now). So Cilk++ should not make any difference (of course using it could lead to improvements). I'm already using a lot of SSE2-code, CEAN looks very useful especially now I'll also start buiding 64-bit versions.
I'm already using /Qansi-alias etc. If I ever find where the difference in performance occurs I'll report it - but so far I only know that the total result of my entire code base (2.5 MB) is slower in 11.x/12.x.
When I have my license I'll run some tests with the latest compiler version - it would be great to be able to take advantage of performance improvements in newer versions instead of having to stick with the old version I'm using now. Especially after reading about Cilk++ and CEAN...
When am I doing wrong? Did I order the wrong license??
I basically get to this point:
4. Choose the component of interest or click on theDownload fileslink. You will be presented with a drop down list of release versions for the selected product.
On that page I see this text:
Select other packages from the dropdown menu:
I cannot choose a release (it's set to 2011, no drop down box), I can select un update though (Update 8 downto Initial release).
But I don't want the Composer 2011 version, I want C++ Compiler 10.1...
Edit: O, I think I see what's wrong now.
If I select my new license the title is: Intel Parallel Composer.
But if I look into the old license it says: Intel C++ Composer XE for Windows* (formerly known as Intel C++ Compiler Professional Edition for Windows).
So does this mean that I bought the wrong license? I only need the C++ compiler and IPP, which are also included in the (cheaper) Parallel Composer....
My developer team is in need of an older IPP license, (aprox years old). When trying to install on our compile machines we are getting a prompt to for either this license, or an equipment s/n. How can we obtain this license that has certainly been purchased from you in the past?