Skip to main content

Les environnements de développement

Les environnements de développement disponibles sur Turpan sont :

  • Nvidia HPC, ARM et GNU Compiler Collection.
  • Les compilateurs C/C++/Fortran et les accélérateurs support des normes OpenMP et OpenACC.
  • Les librairies scientifiques BLAS LAPACK Scalapack FFT et MPI optimisée.

Comment configurer un environnement ?

Sans openmpi, sans gpu

module load gnu/11.2.0

Avec openmpi, sans gpu

module load gnu/11.2.0
module load openmpi/gnu/4.1.4-cpu

Avec openmpi, avec gpu

module load gnu/11.2.0
module load openmpi/gnu/4.1.4-gpu

Comment utilliser un module ?

  • Décharger tous les modules

    module purge
  • Lister les modules disponibles

    module avail hdf5
    ----------------------------- /usr/local/modules/modulefiles/scientific_applications -----------------------------
    hdf5/arm/1.12.2-parallel hdf5/gnu/1.12.2-parallel hdf5/nvidia/1.12.2-parallel
    hdf5/arm/1.12.2-seq hdf5/gnu/1.12.2-seq hdf5/nvidia/1.12.2-seq
  • Charger un module spécifique

    module load hdf5/gnu/1.12.2-seq
  • Décharger un module spécifique

    module unload hdf5/gnu/1.12.2-seq
  • Lister les modules chargés

    module list

Les compilateurs pour GNU ARM NVHPC

  • GNU :
    • gcc pour C
    • g++ pour C++
    • gfortran pour Fortran
  • ARM
    • armclang pour C
    • armclang++ pour C++
    • armflang pour Fortran
  • NVHPC
    • nvc pour C
    • nvc++ pour C++
    • nvfortran pour Fortran

Les flags de compilation

GNU

Pour les options du compilateur GNU, vous pouvez consulter cette page.

ARM + OpenMP :

FFLAGS     = -O3 -g -cpp -fopenmp -fsimdmath -mcpu=neoverse-n1 -ffp-contract=fast -fvectorize -funroll-loops -ffast-math

Voir ce lien pour aider à porter les applications vers ARM.

nvfortran + OpenACC

FFLAGS     = -O3 -g -Mpreprocess -ta=tesla:cc80,pinned -acc -Mcuda -Minfo=accel

Voici le lien vers la doc compilateur NVIDIA.