Difference between revisions of "Intel Compiler"
From HPC users
Jump to navigationJump to search
(Updated for the new OS and related module name changes) |
Albensoeder (talk | contribs) |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 6: | Line 6: | ||
To load the module of your choice type e.g. | To load the module of your choice type e.g. | ||
module load ics/2013_sp1.3.174/64 | module load ics/2013_sp1.3.174/64 | ||
The commands for the available languages are | |||
<center> | |||
{| style="background-color:#eeeeff;" cellpadding="10" border="1" cellspacing="0" | |||
|- style="background-color:#ddddff;" | |||
! Name | |||
!Description | |||
|- | |||
| ''icc'' | |||
| C compiler | |||
|- | |||
| ''icpc'' | |||
| C++ compiler | |||
|- | |||
| ''ifort'' | |||
| Fortran compiler | |||
|- | |||
|} | |||
</center> | |||
== Compiler Flags == | |||
Here are some compiler flags which may increase the performance of your code | |||
<center> | |||
{| style="background-color:#eeeeff;" cellpadding="10" border="1" cellspacing="0" | |||
|- style="background-color:#ddddff;" | |||
! 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. | |||
|- | |||
|} | |||
</center> | |||
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 == | == Intel Cluster Studio addons == | ||
Line 14: | Line 72: | ||
* MKL (Math Kernel Library) | * MKL (Math Kernel Library) | ||
* VTune | * VTune | ||
* Intel Trace Analyzer | * Intel Trace Analyzer | ||
* Intel Thread Checker | * Intel Thread Checker | ||
* Intel Debugger (idb) | * Intel Debugger (idb) | ||
* Thread Building Blocks | * Thread Building Blocks | ||
* Intel(R) Advisor Command Line Tool | * Intel(R) Advisor Command Line Tool |
Latest revision as of 09:39, 10 February 2015
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