Windows x86/x64 - MinGW vs. ICC - Performance significantly worse
I am currently running a computationally intensive application on Linux and Windows on x86 and x86_64. My expectation was that by switching from GCC/MinGW to ICC the overall runtime of the application would decrease. While this turned out to be very true on Linux I got the opposite effect on Windows. A few more facts:
The application is called infernal (http://infernal.janelia.org/) and searches DNA sequence databases.
I made quite a few tests with different input data and the result is almost always the same: On Linux, the ICC compiled binary is about 5% to 10% faster, on Windows, the ICC compiled binary is sometimes even more than 40% slower.
I know that it might not really be a fair comparison, also given the fact that the versions for both ICC and GCC/MinGW are not identical, but I was wondering whether you have any explanation for this behavior.
If you need more information I'll be glad to provide you with more details.