Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
mpi [2007/08/17 18:09] – créée gerard | mpi [2017/08/25 09:56] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Utilisation de MPI ====== | ||
+ | connaître l' | ||
+ | < | ||
+ | module avail mpi | ||
+ | |||
+ | -------------------- / | ||
+ | mpi/ | ||
+ | |||
+ | </ | ||
+ | |||
+ | ====== Différentes versions ====== | ||
+ | |||
+ | |||
+ | ===== OpenMPI ===== | ||
+ | * [[http:// | ||
+ | * [[openmpi_compilation|compilation]] | ||
+ | |||
+ | ===== HPC Cluster Tools 8 (OpenMPI) ===== | ||
+ | juin 09 '' | ||
+ | * [[http:// | ||
+ | < | ||
+ | module load hpc82 | ||
+ | </ | ||
+ | ou | ||
+ | < | ||
+ | module load sunhpc | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== HPC Cluster Tools 6 ===== | ||
- | HPC Cluster Tools 6 | ||
mars 06 | mars 06 | ||
- | http:// | + | [[http:// |
+ | |||
+ | |||
+ | ajouter / | ||
+ | < | ||
+ | module load hpc | ||
+ | </ | ||
+ | |||
+ | ===== MPICH ===== | ||
+ | sur nemo, slatp, shrek | ||
+ | 1.2.6, 1.2.7p1, 1.2.7.p1 | ||
+ | 32bits et 64 bits | ||
+ | |||
+ | [[http:// | ||
+ | |||
+ | / | ||
+ | |||
+ | / | ||
+ | |||
+ | / | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Tests MPI ====== | ||
+ | |||
+ | avec MPICH 1.2.6 installé dans /usr/local. Penser à mettre à jour le PATH | ||
+ | |||
+ | < | ||
+ | nemo-henry% setenv PATH / | ||
+ | |||
+ | nemo-henry% pwd | ||
+ | / | ||
+ | nemo-henry% make | ||
+ | mpirun -np 8 ./ | ||
+ | Rang : 0 ; Coordonnees : (0,0) ; W = 1. | ||
+ | Rang : 3 ; Coordonnees : (1,1) ; W = 2. | ||
+ | Rang : 1 ; Coordonnees : (0,1) ; W = 1. | ||
+ | Rang : 4 ; Coordonnees : (2,0) ; W = 3. | ||
+ | Rang : 2 ; Coordonnees : (1,0) ; W = 2. | ||
+ | Rang : 6 ; Coordonnees : (3,0) ; W = 4. | ||
+ | Rang : 5 ; Coordonnees : (2,1) ; W = 3. | ||
+ | Rang : 7 ; Coordonnees : (3,1) ; W = 4. | ||
+ | |||
+ | </ | ||
+ | |||
+ | Remarque: | ||
+ | * on utilise la version 32 bits de MPICH (pour la [[version 64 bits]]) | ||
+ | < | ||
+ | nemo-henry% file / | ||
+ | / | ||
+ | </ | ||
+ | |||
+ | * la configuration de MPICH est dans le fichier / | ||
+ | |||
+ | |||
+ | ====== Tests PETSC ====== | ||
+ | ===== petsc-3.1-p8 ===== | ||
+ | sur octopus, faire: | ||
+ | < | ||
+ | module load sunhpc petsc3.1_p8_hpc8 | ||
+ | </ | ||
+ | * récupérer l' | ||
+ | * puis lancer la compilation et l' | ||
+ | < | ||
+ | make -f Makefile_petsc3.1 solv_ksp | ||
+ | mpirun -np 2 ./solv_ksp -mat_type mpiaij -pc_type lu -pc_factor_mat_solver_package mumps -nx 1000 -ny 1000 -debug 0 | ||
+ | </ | ||
+ | |||
+ | ===== petsc-2.3.0 ===== | ||
+ | |||
+ | < | ||
+ | nemo-henry% setenv PATH / | ||
+ | nemo-henry% pwd | ||
+ | / | ||
+ | nemo-henry% cc -KPIC -g -xtarget=opteron -o ex1 ex1.c \ | ||
+ | -R/ | ||
+ | -L/ | ||
+ | -I/ | ||
+ | -lmpich \ | ||
+ | -R/ | ||
+ | -L/ | ||
+ | -I/ | ||
+ | -I/ | ||
+ | -lpetscvec -lpetsc \ | ||
+ | -xlic_lib=sunperf | ||
+ | |||
+ | nemo-henry% mpirun -np 4 ex1 | ||
+ | Vector length 20 | ||
+ | Vector length 20 40 60 | ||
+ | All other values should be near zero | ||
+ | VecScale 0 | ||
+ | VecCopy | ||
+ | VecAXPY 0 | ||
+ | VecAYPX 0 | ||
+ | VecSwap | ||
+ | VecSwap | ||
+ | VecWAXPY 0 | ||
+ | VecPointwiseMult 0 | ||
+ | VecPointwiseDivide 0 | ||
+ | VecMAXPY 0 0 0 | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Utilisation de (Sun) MPI (HPC6.0) ====== | ||
+ | |||
+ | ===== Aide ===== | ||
+ | |||
+ | Sun HPC est une implémentation de MPI 1 et 2 par Sun. Il semble aujourd' | ||
+ | |||
+ | Lorsqu' | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | |||
+ | |||
+ | |||
+ | ===== mode batch ===== | ||
+ | |||
+ | < | ||
+ | at -m now | ||
+ | mprun -np < | ||
+ | </ | ||
+ | * on fait : "mpps -Ae" pour vérifier que le job est bien parti | ||
+ | |||
+ | ===== Commandes utiles pour lancer des jobs ===== | ||
+ | |||
+ | |||
+ | ^Commande ^Action ^ | ||
+ | |mpps -Ae |Liste les process parallèles de toutes les machines parallèles| | ||
+ | |mpps -Aep |Liste les process parallèles de toutes les machines parallèles, | ||
+ | |mpkill cre.xxxx |A faire sur le serveur HPC où tourne le job : arrête le programme| | ||
+ | |mpkill -KILL cre.xxxx |id. | | ||
+ | |mpkill -C jobid |Uniquement root peut faire cette commande.| | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== Debugger TotalView ====== | ||
+ | Installé sur nemo, c'est une version beta, expire le 25 juin 06. | ||
- | ajouter / | + | Pour le lancer, taper simplement: totalview |
- | http://www.latp.univ-mrs.fr/vfcc/doku.php? | + | La documentation est ici:[[http://www.etnus.com/Documentation/|Etnus]] |