Afficher la pageAnciennes révisionsLiens de retourHaut de page Cette page est en lecture seule. Vous pouvez afficher le texte source, mais ne pourrez pas le modifier. Contactez votre administrateur si vous pensez qu'il s'agit d'une erreur. ====== Utilisation de MPI ====== connaître l'environnmeent (sur octopus): <code> module avail mpi -------------------- /local/apps/Modules/3.2.6/modulefiles --------------------- mpi/openmpi144 mpi/sunhpc8 mpi/sunhpc82 mpi/sunhpc821c </code> ====== Différentes versions ====== ===== OpenMPI ===== * [[http://www.open-mpi.org]] * [[openmpi_compilation|compilation]] ===== HPC Cluster Tools 8 (OpenMPI) ===== juin 09 ''Sun HPC ClusterTools 8.2 is based on the Open MPI 1.3.3 release.'' * [[http://docs.sun.com/app/docs/prod/hpc.cluster82?l=en&a=view|doc]] <code> module load hpc82 </code> ou <code> module load sunhpc </code> ===== HPC Cluster Tools 6 ===== mars 06 [[http://www.sun.com/products-n-solutions/hardware/docs/pdf/819-4133-10.pdf|Sun MPI 7.0 Software Programming and Reference Guide]] ajouter /opt/SUNWhpc/bin dans le PATH (ou utiliser plutôt la commande module) <code> module load hpc </code> ===== MPICH ===== sur nemo, slatp, shrek 1.2.6, 1.2.7p1, 1.2.7.p1 32bits et 64 bits [[http://www-unix.mcs.anl.gov/mpi/mpich/]] /usr/local/mpich-1.2.6 /usr/local/mpich-1.2.6-new /usr/local/mpich-1.2.7p1 ====== Tests MPI ====== avec MPICH 1.2.6 installé dans /usr/local. Penser à mettre à jour le PATH <code> nemo-henry% setenv PATH /usr/local/mpich-1.2.6/bin:${PATH} nemo-henry% pwd /local/henry/tests/MPI/mpi1_tp/tp6/solution nemo-henry% make mpirun -np 8 ./CommSplit 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. </code> Remarque: * on utilise la version 32 bits de MPICH (pour la [[version 64 bits]]) <code> nemo-henry% file /local/henry/tests/MPI/mpi1_tp/tp6/solution/CommSplit /local/henry/tests/MPI/mpi1_tp/tp6/solution/CommSplit: ELF 32-bit LSB executable 80386 Version 1 [FPU], dynamically linked, not stripped </code> * la configuration de MPICH est dans le fichier /usr/local/mpich-1.2.6/share/machines.solaris86 ====== Tests PETSC ====== ===== petsc-3.1-p8 ===== sur octopus, faire: <code> module load sunhpc petsc3.1_p8_hpc8 </code> * récupérer l'{{:petsc:petsc3.1_example.tar|exemple}} (fourni par Yann Jobic de l'IUSTI) * puis lancer la compilation et l'exécution: <code> 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 </code> ===== petsc-2.3.0 ===== <code> nemo-henry% setenv PATH /opt/SUNWspro/bin:${PATH} nemo-henry% pwd /local/henry/tests/petsc/test nemo-henry% cc -KPIC -g -xtarget=opteron -o ex1 ex1.c \ -R/usr/local/mpich-1.2.6/lib \ -L/usr/local/mpich-1.2.6/lib \ -I/usr/local/mpich-1.2.6/include \ -lmpich \ -R/local/henry/petsc-2.3.0-debug/lib/solaris-amd64-32 \ -L/local/henry/petsc-2.3.0-debug/lib/solaris-amd64-32 \ -I/local/henry/petsc-2.3.0-debug/include \ -I/local/henry/petsc-2.3.0-debug/bmake/solaris-amd64-32 \ -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 0 VecAXPY 0 VecAYPX 0 VecSwap 0 VecSwap 0 VecWAXPY 0 VecPointwiseMult 0 VecPointwiseDivide 0 VecMAXPY 0 0 0 </code> ====== Utilisation de (Sun) MPI (HPC6.0) ====== ===== Aide ===== Sun HPC est une implémentation de MPI 1 et 2 par Sun. Il semble aujourd'hui que Sun se rallie à OpenMPI, en fournissant [[http://www.sun.com/software/products/clustertools/ct7.html|HPC7.0]] Lorsqu'on utilise ces produits, on peut trouver de la documentation et du support communautaire: * [[http://mailman.rwth-aachen.de/mailman/listinfo/sunhpc|SunHPC mailing list]] * [[http://www.sun.com/products-n-solutions/hardware/docs/Software/Sun_HPC_ClusterTools_Software|Documentation]] * [[http://www.sun.com/secure/software/clustertools/forms/index.xml|Technical Support]] ===== mode batch ===== <code> at -m now mprun -np <nb-proc> <executable> <parametre executable> </code> * 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, mais avec le nom des noeuds utilisés| |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. Pour le lancer, taper simplement: totalview La documentation est ici:[[http://www.etnus.com/Documentation/|Etnus]] mpi.txt Dernière modification : 2017/08/25 09:56de 127.0.0.1