Ouessant : compilateur IBM

L'utilisation des compilateurs IBM nécessite d'utiliser Module

$ module load xlc xlf

Ce tableau décrit les compilateurs à utiliser suivant les langages utilisés :

Langages Compilateur
Fortran Fortran 77 et format fixe
xlf, xlf_r ou f77

Fortran 90 et format libre
xlf90, xlf90_r ou f90

Fortran 95 et format libre
xlf95, xlf95_r ou f95

Fortran 2003 et format libre
xlf2003_r ou f2003

Fortran 2008 et format libre
xlf2008, xlf2008_r ou f2008
C xlc ou xlc_r
C++ xlC, xlC_r, xlc++ ou xlc++_r

Compilateur MPI

La bibliothèque MPI à utiliser de préférence sur Ouessant est Spectrum MPI disponible avec Module.

$ module load xlc xlf smpi
Langages Compilateur
Fortran Fortran 77 et format fixe
mpif77

Fortran 90 et format libre
mpif90

C mpicc
C++ mpiCC, mpic++

Remarques

Compilation d'applications multithreadées et OpenMP

Les applications multithreadées ou utilisant des directives OpenMP doivent impérativement être compilées avec les commandes suffixées en _r. En effet, il est nécessaire d'utiliser les versions ré-entrantes du compilateur et des bibliothèques standards.

Options de compilation

Options Effets
-qsmp=omp Support de l'OpenMP
-qoffload -qtgtarch=sm_60 Support de l'OpenMP Target
-g Ajout d'information pour le débogage
-C stoppe lorsqu'un tableau est adressé en dehors de ses bornes
-O3 [-qhot] Option recommandée
-O0 -qnohot -qnosmp -qstrict Aucune optimisation
-O2 Optimisation limitée
-O3 -qstrict Optimisation sans changement de la sémantique du code
-O3 Optimisation avec changement possible de la sémantique du code
-O4 Optimisation plus agressive
-O5 Optimisation encore plus agressive