5 ms·
Anyone actually use Intel compilers
by killingtime74 5y ago
Anyone actually use Intel compilers
- jraph 5y agoThey are used in High Performance Computing as far as I know. Not systematically though.
- shellac 5y agoYes, this is the only place I see alternative compilers used much. We have Intel and Nvidia compilers available to our users.
- hr0m 5y agoWe use Intel Compiler mainly on supercomputers with Intel CPUs. IT can produce faster code. However it is not great to work with it. It lacks features of the newer standard and it is really slow. Usually we develop with clang or GCC and then we go on the cluster.
- unionpivo 5y agoI am sure that plenty of existing HPC cluster will remain intel, the interesting question is how much of the new HPC computers will be AMD. or is there any HPC specific reason why Intel would still be preferred?
- qayxc 5y agoExisting install base most likely. It's not as if HPC clusters get replaced every other year. Even upgrades usually stay with the same platform and don't switch from Intel to AMD or ARM-based systems.
- bocklund 5y agoSeveral new HPCs are already using AMD [1] and that trend will probably continue if AMD continues to put out competitive products. [1] See the Top 500 list that, by my count, has 26 of the top 100 HPC systems using AMD EPYC CPUs as of their June 2021 listing https://www.top500.org/lists/top500/list/2021/06/ https://www.top500.org/lists/top500/list/2021/06/
- physicsguy 5y agoYeah, I used in my last job (commercial CFD code), and it was widely used by others in our sector. It's nice if you need to support Windows/Linux as well as brings for e.g. MPI, etc. and compiling scietnfic libs like FFTW on Windows is a PITA, so using MKL which comes bundled with it is very easy.
- slavik81 5y agoWhat makes compiling FFTW on Windows so troublesome? That's currently on my to-do list.
- physicsguy 5y agoWell, most Windows applications you have to actually deploy are compiled with MSVC, and historically most OSS libs don’t use cross platform build scripts, etc. FFTW these days I think has a CMakeLists.txt file, and Visual Studio well supports CMake now but it didn’t used to.
- W0lf 5y agoPretty much in computer vision / image processing related companies and software products. The performance related advantage on Intel x86 architectures in particular is not to be neglected.
- gpderetta 5y agoMy understanding (but I'm not an ICC user) is the majority of the performance improvement are from the vectorized math libraries (that technically you can use from GCC as well).
- physicsguy 5y agoIt uses a default lower accuracy floating point model than GCC, so initially people think it's faster til they realise their results are slightly different and have to mess around with the `fp-model` flag
- gpderetta 5y agoRight, of course, IIRC it does the equivalent of -ffast-math by default.
- cwizou 5y agoA few years back, Intel was striking marketing deals with large game developers that included them giving away free copies of their compiler and support. It's unclear how prevalent that was, though there were a few titles with an Intel splash logo that were part of this. This is often assumed to be the cause of the difference of performances between AMD and Intel CPUs in games btw, and while that can definitely come into it, it's not always correct. Sometimes the engines just don't know about the CPUs and treat them like the previous generation (like at Ryzen launch where some games ignored SMT on those), sometimes the devs only tested on one arch, or sometimes it's some extra library that makes incorrect assumptions. Interesting read on the topic with Cyberpunk : https://cookieplmonster.github.io/2020/12/13/cyberpunk-2077-and-amd-cpus/ https://cookieplmonster.github.io/2020/12/13/cyberpunk-2077-...
- bluGill 5y agoIntel tried to convince us, and I think I still have a todo down on the list to try their compilers out. They gave up their attempts quickly when they discovered we have very little code that would benefit from vectorization.
- userbinator 5y agoYes. Very good optimisation (to be expected), but without the insane exploitation of UB that the GCC/Clang crowd seem to think is necessary for optimisation. Instruction scheduling and selection probably makes the biggest difference.
- mbrodersen 5y agoA lot of game companies use the Intel compiler (anecdotally).
- BeetleB 5y agoLots of people in the HPC and scientific computing sphere. Some of their math capabilities is either much faster or more accurate (or both) than other compilers.