Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
documentation:tutorials:build:fortran_paralleleopemmp [2018/02/14 10:02] cicalugadocumentation:tutorials:build:fortran_paralleleopemmp [2023/01/13 09:35] (Version actuelle) – supprimée ccalugar
Ligne 1: Ligne 1:
-====== Compilation et d'exécution d'un programme (Fortran) ====== 
  
-{{INLINETOC}} 
-===== Langage Fortran 90, code parallèle OpenMP ===== 
- 
-Soit le programme écrit en OpenMP [[documentation:examples:sommevecvecparOpenMP.f90|ProgPAR_OpenMP.f90]] qui affiche Hello World pour chaque thread et en plus, le thread maître affiche le nombre de threads. 
-==== Compilation du programme : ==== 
- 
-=== Définition de l'environnement : === 
-  
- 
-  * définition de l'environnement  
-<code bash> 
-module avail 
-module load GCC/7.2.0 
-</code> 
- 
-  * vérification de la version du compilateur 
-<code> 
-gfortran --version 
-GNU Fortran (GCC) 7.2.0 
-Copyright (C) 2017 Free Software Foundation, Inc. 
-</code> 
- 
-**Compilation** : 
- 
-<code> 
-gfortran -openmp -o ProgPAR_OpenMP.f90.exe ProgPAR_OpenMP.f90  
-</code> 
- 
-Le fichier binaire (exécutable) ''ProgPAR_OpenMP.f90.exe'' est généré. 
-====Exécution du programme :==== 
- 
-=== Exécution sur le serveur de compilation : === 
- 
-<code> 
-setenv OMP_NUM_THREADS "8" (pour tcsh) 
-export OMP_NUM_THREADS=8 (pour bash) 
-./ProgPAR_OpenMP.f90.exe 
-</code> 
- 
-Le résultat est affiché a l'écran : 
- 
-<code> 
- 
-Hello World from thread =            0 
- Number of threads =            8 
- Hello World from thread =            7 
- Hello World from thread =            6 
- Hello World from thread =            3 
- Hello World from thread =            2 
- Hello World from thread =            1 
- Hello World from thread =            4 
- Hello World from thread =            5 
- 
-</code> 
- 
-=== Exécution sur le cluster : === 
- 
- 
-On utilise un script de soumission [[documentation:tutorials:submit:jobopenmptcsh|batch.csh]] (ou [[documentation:tutorials:submit:jobopenmpbash|batch.sh]], pour le shell bash) pour soumettre le job sur les clusters de calcul. 
- 
-C'est le script de soumission qui configure l'environnement puis appelle votre binaire (avec ses options, s'il en a) sur le noeud d'execution. 
- 
-''SGE -> batch.csh -> binaire'' 
- 
-<code> 
-qsub batch.csh 
-Your job 769504 ("ProgrammeOpenMP") has been submitted 
-qstat 
- 
-job-ID  prior   name             user         state submit/start at     queue                  slots ja-task-ID  
------------------------------------------------------------------------------------------------------------------ 
- 769504 0.00000 ProgrammeOpenMP   cicaluga     qw    06/12/2012 07:21:46 
-</code> 
- 
-  * La sortie de l'écran (sortie standard) est redirigée dans le fichier ''ProgrammeOpenMP.o769504'' 
-  * La sortie erreur (erreur standard) est redirigée dans le fichier ''ProgrammeOpenMP.e769504'' 
-   
-<code> 
-cat ProgrammeOpenMP.o769504 
-Hello World from thread =            0 
- Number of threads =            8 
- Hello World from thread =            7 
- Hello World from thread =            6 
- Hello World from thread =            3 
- Hello World from thread =            2 
- Hello World from thread =            1 
- Hello World from thread =            4 
- Hello World from thread =            5 
-</code>  
documentation/tutorials/build/fortran_paralleleopemmp.1518602524.txt.gz · Dernière modification : 2020/08/25 15:58 (modification externe)