User Tools

Site Tools


compiling

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
compiling [2021/02/26 21:17]
root
compiling [2021/03/05 14:58] (current)
root
Line 16: Line 16:
 ==Intel== ==Intel==
 (all intel compilers,icc/icpc/ifort) intel/14.0.3,  16.0.1,  17.0.4,  17.0.7,  18.0.1,  18.0.2,  19.0.4 , 19.0.5,  20.0.1,  20.0.4 (all intel compilers,icc/icpc/ifort) intel/14.0.3,  16.0.1,  17.0.4,  17.0.7,  18.0.1,  18.0.2,  19.0.4 , 19.0.5,  20.0.1,  20.0.4
-Multiple versions are mostly for backwards compatibility.  With modern Intel hardware, the latest Intel compiler is usually recommended. We recommend 14.0.3 for trestles AMD Bulldozer nodes and 19.0.5 for Pinnacle AMD nodes.+Multiple versions are mostly for backwards compatibility.  With modern Intel hardware, the latest Intel compiler is usually recommended. We recommend 14.0.3 for trestles AMD Bulldozer nodes and 19.0.5 for Pinnacle AMD Epyc nodes.
  
 ==PGI== ==PGI==
-(pgcc,pgc++,pgf95) PGI/2016, 2016.5, 2017, 18.4, 18.10, 19.4+(pgcc,pgc++,pgf95) PGI/2016, 2016.5, 2017, 18.4, 18.10, 19.4. Superseded by NVidia HPC SDK. 
 + 
 + 
 +==NVidia== 
 +nvhpc/20.7, the HPC SDK, loads the LLVM-based Cuda compiler (nvcc) as well as Cuda libraries, PGI-based compilers (pgcc,pgc++,pgf95) and an OpenMPI-based mpi with PGI (mpicc,mpic++,mpif90) 
 +cuda/5.5 through 11.1 loads nvcc and Cuda libraries.
  
 ==Oracle== ==Oracle==
-(suncc,sunCC,sunf95) sunstudio/12.6+sunstudio/12.6 loads (suncc,sunCC,sunf95)
  
 ==Clang== ==Clang==
-clang 3.4.2-9 is the base version installed by rpm. +clang 3.4.2-9 is the older base version installed by rpm. 
-clang/5.0.1 is the devtoolset-7 version.+clang/5.0.1 (clang,clang++,no flang) is the devtoolset-7 version. 
 + 
 +==AMD== 
 +aocc/2.3.0 is AMD's LLVM-based compiler (clang,clang++,flang)
  
 ===MPI Modules=== ===MPI Modules===
Line 42: Line 50:
 ==Commercial== ==Commercial==
 modules impi/5.0.0, 5.1.1, 5.1.2, 17.0.4, 17.0.7, 18.0.1, 18.0.2, 19.0.4, 19.0.5, 20.0.1, 20.0.4  modules impi/5.0.0, 5.1.1, 5.1.2, 17.0.4, 17.0.7, 18.0.1, 18.0.2, 19.0.4, 19.0.5, 20.0.1, 20.0.4 
-module platform_mpi/9.1.2 +and platform_mpi/9.1.2 are available and have a prerequisite of a gcc or intel compiler.
-are available and have a prerequisite of a gcc or intel compiler.+
  
 ==NVidia HPCx== ==NVidia HPCx==
Line 69: Line 76:
  
 ==Notes.3== ==Notes.3==
-In a reversal of the previous case, you may find that Intel OpenMP libraries are needed with GNU, especially if the Intel MKL libraries and threaded functions are called. In a pure gcc compilation, the GNU OpenMP library libgomp should suffice and be automatically loaded in an OpenMP program. But Intel libirc and libiomp5 may be needed, especially if called by MKL, and are only supplied by the Intel compilers. A module command similar to this may be necessary:+In a reversal of the previous case, you may find that Intel OpenMP libraries are needed with GNU, especially if the Intel MKL libraries and threaded functions are called. In a pure gcc compilation, the GNU OpenMP library libgomp should suffice and be automatically loaded in an OpenMP program. But Intel libirc and libiomp5 may be needed, especially if called by MKL, and are only supplied by the Intel compilers. A module command similar to this may be necessary for the system to find the libraries:
 <code> <code>
 mnodule load gcc/8.3.1 openmpi/4.1.0 mkl/19.0.5 intel/19.0.5 mnodule load gcc/8.3.1 openmpi/4.1.0 mkl/19.0.5 intel/19.0.5
 </code> </code>
compiling.1614374258.txt.gz · Last modified: 2021/02/26 21:17 by root