Fortran

Les utilisateurs du CC-IN2P3 disposent de plusieurs compilateurs du langage Fortran (77/90/95).

Compilateurs GNU

GNU a développé des compilateurs Fortran 77/90/95 fournis avec le systeme Linux. Pour compiler avec ces compilateurs, il faut charger l’environnement via ccenv gcc <version>. Pour voir les versions disponible de gcc utilsez la commande ccenv gcc --list.

Fortran77

g77 est le compilateur GNU pour le langage Fortran77. Pour compiler avec ce compilateur, il faut charger l’environnement via ccenv gcc 3.4.6 utiliser la commande g77. Pour connaître les options du compilateur, il faut consulter :

% ccenv gcc 3.4.6
% man g77

Compilation d’un programme test.f et construction d’un fichier test.o :

% g77 -O -c test.f

Si votre programme utilise les routines présentes dans la bibliothèque CERN (CERNLIB), il faut utiliser la commande cernlib pour donner au compilateur les noms de bibliothèques. Voici les commandes pour compiler, créer le module exécutable et exécuter le programme test :

% g77 -O -o test  test.f  `cernlib` -lm
% ./test

Warning

Il faut entourer la commande cernlib par des accents graves !

Fortran 90/95

gfortran le compilateur GNU pour le langage Fortran 90/95. Pour compiler avec ce compilateur, il faut charger l’environnement via ccenv gcc <version> et utiliser la commande gfortran.

Pour connaître les options du compilateur, il faut consulter :

% ccenv gcc 7.3.0
% man gfortan

Compilateurs PGI

Le CC-IN2P3 dispose d’un certain nombre de licences flottantes (via FlexLM) pour l’utilisation des compilateurs Fortran (77/90/95) fourni par PGI (Portland group). Pour compiler votre code source avec ces compilateurs, il faut initialiser l’environnement par la commande ccenv pgi <version>. Pour voir les versions disponible il faut faire la commande ccenv pgi --list.

Il y a aussi possibilité d’utiliser le deboguer et le profiler avec les noms : pgdbg et pgprof.

Veuillez trouver ici la documentation PGI officielle.

Fortran77

pgf77 est le compilateur PGI pour le langage Fortran77. Pour compiler votre code source avec ce compilateur, il faut initialiser l’environnement par la commande ccenv pgi 18.10.

Pour consulter les options de la commande pgf77, faites :

% ccenv pgi 18.10
% man pgf77

Voici un exemple de compilation :

% ccenv pgi 18.10
% pgf77 -O -c test.f

Si vous voulez faire l’édition des liens (linker) et exécuter votre programme avec la CERNLIB, il faut ajouter la bibliothèque libg2c.a fournie avec le compilateur g77 avec laquelle la CERNLIB a été compilé. La même remarque est valable pour les bibliothèques compilées avec g77 (comme la bibliothèque NAG par exemple).

% ccenv pgi 18.10
% set g2c = '-lg2c'
% pgf77 -O -o test  test.f   `cernlib`  -lm ${g2c}
% ./test

Fortran90

pgf90 est le compilateur PGI pour le langage Fortran90. Pour compiler votre code source avec ce compilateur, il faut initialiser l’environnement par la commande ccenv pgi <version>.

Pour consulter les options de la commande pgf90, faites :

% ccenv pgi 19.7
% man pgf90

Voici un exemple de compilation :

% ccenv pgi 19.7
% pgf90 -O -c test.f90

Fortran95

pgf95 est le compilateur PGI pour le langage Fortran95. Pour compiler votre code source avec ce compilateur, il faut initialiser l’environnement par la commande ccenv pgi <version> :

% ccenv pgi 19.7
% man pgf95

Voici un exemple de compilation :

% ccenv pgi 19.7
% pgf95 -O -c test.hpf

Compilateur Intel

Le CC-IN2P3 dispose d’un certain nombre de licences flottantes (via FlexLM) pour l’utilisation des compilateurs fourni par Intel.

Ce logiciel regroupe un ensemble de compilateurs : C, C++ et Fortran avec le deboggeur interactif idb et avec les bibliothèques :

  • MKL (Math Kernel Library)
  • IPP (Integrted Performance Primitives)
  • Threading Building Blocks for Linux

Pour compiler votre code source avec ce compilateur, il faut initialiser l’environnement par la commande ccenv intel <version> et utiliser la commande ifort. Pour voir les versions disponibles il faut faire la commande ccenv intel --list Pour consulter les options de la commande ifort, faites :

% ccenv intel 2019
% man ifort

Veullez trouver ici la documentation Intel C++ offcielle.

Voici un exemple de compilation :

% ccenv intel 2019
% ifort -O -c test.f

En Fortran 77, si vous voulez utiliser la CERNLIB, il faut ajouter la bibliothèque libg2c.a fournie avec le compilateur g77. La même remarque est valable pour les bibliothèques compilées avec g77 (comme la bibliothèque NAG par exemple).

% ccenv intel
% set g2c = '-lg2c'
% ifort -O -o test  -nofor_main  test.f  `cernlib`  -lm  ${g2c}
% ./test

Bibliothèques NAG

L’accès à la bibliothèque NAG Fortran se fait en chargeant l’environnement (utilisez l’option --list pour avoir la liste des bibliothèques disponibles) :

% ccenv Nag_Fortran <NAG product code>

Pour une documetation detaillée, veuillez vous référee au site de l’editeur.

Compilateur NAG

Le CC-IN2P3 dispose d’un certain nombre de licences flottantes (via FlexLM) pour l’utilisation du compilateur Fortran 95 fourni par NAG . Pour compiler votre code source avec ce compilateur, il faut initialiser l’environnement par la commande ccenv f95 <version>.

Pour voir les versions disponibles utilsez la commande ccenv f95 --list et pour consulter les options de f95 faites :

% ccenv f95 6.2
% f95 -help