Intel Compiler
From HPC users
Revision as of 09:39, 10 February 2015 by Albensoeder (talk | contribs)
The Intel Compilers are available as modules for 32bit (depricated) and 64-bit version. To see the available versions of the Intel Compilers type
module av ics
which currently shows
-------------------- /cm/shared/uniol/modulefiles/COMPILER --------------------- ics/2013_sp1.3.174/32 ics/2013_sp1.3.174/64
To load the module of your choice type e.g.
module load ics/2013_sp1.3.174/64
The commands for the available languages are
Name | Description |
---|---|
icc | C compiler |
icpc | C++ compiler |
ifort | Fortran compiler |
Compiler Flags
Here are some compiler flags which may increase the performance of your code
Flag | Description |
---|---|
-O2, -O3, -fast | Enable optimization to maximise speed. -O3 and -fast is more agressive. |
-xHost | Enables the usage SIMD extensions of host which allows vectorizing of floating point operations. |
-fp-model MODEL | Defines the consistency level of floating point operations. Allowed MODEL are: fast, precise, strict, except |
-[no-]prec-div, -[no-]prec-sqrt, -[no-]fast-transcendentals | Enables faster computations of divisions, square roots and transcendental functions with a reduced accruacy, respectively. |
For more informations please have a look on the man pages.
Advantages
- usually best performance for C and Fortran code on Intel processors
- high performance with OpenMP
- high optimization done by compiler
- Fortran extension coarray implemented
Disadvantages
- performance of C++ code can be moderate
- relative slow compilation
- not free, only for Intel architecture available
- newest standards may missing
- sometimes too enthusiastic/aggressive in optimization
Intel Cluster Studio addons
Within the Intel Cluster Studio several tools and libraries for debugging, profiling and analyzing of program code are included:
- MKL (Math Kernel Library)
- VTune
- Intel Trace Analyzer
- Intel Thread Checker
- Intel Debugger (idb)
- Thread Building Blocks
- Intel(R) Advisor Command Line Tool