I like the intel compilers. The generate nice code on intel platforms. The problem is when you use them for your product, you only get good code for intel platforms. The resulting code winds up being slow in many cases on Opterons. Which is not good.
I have been talking about this point for a while. There are hacks you can use with your intel generated code to take out the specific processor test cases, and just run them on opterons, and surprise, they run often better than without those hacks. Still, since the intel compilers really don’t know about and model NUMA, they still have problems with Opterons.
So we typically suggest that, if the only target of your development efforts will be intel processors, sure use those compilers. Any other target than pure intel, have a look at PathScale and PGI.
Sure enough, we hear that another group is doing this. LSTC used to use the Intel compilers as I remember, and now they look like they are using the PGI compilers. CD-Adapco just announced this today as well, they are moving to the PGI. For the reason that PGI generates good code regardless of the platform. They don’t have an axe to grind, or processors to promote.
I hope that the intel compilers will start to do a better job working with non-intel products, though I am not so naive as to think it will happen any time soon.