Difference between revisions of "Intel Compiler 2016"
From HPC users
Jump to navigationJump to search
Schwietzer (talk | contribs) (Added hpc-env/6.4) |
|||
Line 3: | Line 3: | ||
which currently shows | which currently shows | ||
-------------------- /cm/shared/uniol/modulefiles/COMPILER --------------------- | -------------------- /cm/shared/uniol/modulefiles/COMPILER --------------------- | ||
'''icc/2016.3.210''' | |||
This output depends on the currently loaded environment. If you change to the newer environment, the output will differ: | |||
module load hpc-env/6.4 # change the environment | |||
module av icc | |||
--------------------------------- /cm/shared/uniol/modules/6.4/compiler --------------------------------- | |||
'''icc/2018a''' | |||
-------------------------------- /cm/shared/uniol/modules/6.4/toolchain --------------------------------- | |||
'''iccifort/2018a''' | |||
To load the module of your choice type e.g. | To load the module of your choice type e.g. | ||
module load intel/2016.3.210 | module load intel/2016.3.210 |
Revision as of 12:24, 28 June 2019
The Intel compiler is available as a module and is currently installed in version 2016.3.210. To find out which versions are installed you can use the command
module av icc
which currently shows
-------------------- /cm/shared/uniol/modulefiles/COMPILER --------------------- icc/2016.3.210
This output depends on the currently loaded environment. If you change to the newer environment, the output will differ:
module load hpc-env/6.4 # change the environment module av icc
--------------------------------- /cm/shared/uniol/modules/6.4/compiler --------------------------------- icc/2018a -------------------------------- /cm/shared/uniol/modules/6.4/toolchain --------------------------------- iccifort/2018a
To load the module of your choice type e.g.
module load intel/2016.3.210
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. |
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