next up previous contents index
Next: 3.8.11 NEC SX-5 Up: 3.8 Optimization, Compiler Switches Previous: 3.8.9 Linux: PGI Compiler   Contents   Index


3.8.10 Linux: Intel Compiler

With Version 7.0 and 7.1 of the Intel compiler CO5BOLD compiles. Version 8.0 still causes touble.

The native format on Intel machines is little_endian. With

export F_UFMTENDIAN=big
(to be set at runtime after compilation before running CO5BOLD) the default can be changed to big_endian. The appropriate UIO modules are uio_mac_intel_module.f90 in the little_endian case and uio_mac_sun_module.f90 in the big_endian case. The compiler is called with ifc.

Important switches are:

Using the Intel compiler there is a problem with the UIO modules when OpenMP is activated. This a bit weird because the UIO modules do not contain any OpenMP directives. However, this means that OpenMP can be safely deactivated for these modules. A proposed compiling sequence is (all modules activated):

export F90_LHDRAD=1
export F90_MSRAD=1
export F90_SHORTRAD=1
export F90_DUST=1
export F90_MHD=1

export F90_PARALLEL=scalar
./configure
make UIO

export F90_PARALLEL=openmp
./configure
make

In some cases it migh be helpful to set

export LD_ASSUME_KERNEL=2.4.19

when encountering problems with OpenMP ,see the Release Notes of the Intel compiler.


next up previous contents index
Next: 3.8.11 NEC SX-5 Up: 3.8 Optimization, Compiler Switches Previous: 3.8.9 Linux: PGI Compiler   Contents   Index