Intel MPI Howto pe clusterul NCIT
- Details Hits: 5530
In cadrul clusterului NCIT, avem la dispozitie compilatorul Intel 11.1 - 0.38 si libraria IntelMPI 3.2.1 - 009.
Pentru a folosi IntelMPI trebuie sa selectam compilatorul si libraria mpi. Acest lucru se face fie prin comanda module:
[heri@fep-53-2 ~]$ module load compilers/intel-11.1_038
[heri@fep-53-2 ~]$ module load mpi/intelmpi-3.2.1_009
sau direct, prin folosirea scripturilor de mediu venite cu compiler-ul. In bash:
[heri@fep-53-2 ~]$ . /opt/intel/Compiler/11.1/038/bin/iccvars.sh intel64 (pt. C/C++)
[heri@fep-53-2 ~]$ . /opt/intel/Compiler/11.1/038/bin/ifortvars.sh intel64 (pt. Fortran)
[heri@fep-53-2 ~]$ . /opt/intel/impi/3.2.1/bin64/mpivars.sh (pt. 64bit arhitecture - default)
[heri@fep-53-2 ~]$ . /opt/intel/impi/3.2.1/bin/mpivars.sh (pt. 32biti, nesuportat pe clusterul nostru)
In cadrul SGE, shell-ul default este csh, iar scripturile de mediu sunt:
[heri@fep-53-2 ~]$ . /opt/intel/Compiler/11.1/038/bin/iccvars.csh intel64 (pt. C/C++)
[heri@fep-53-2 ~]$ . /opt/intel/Compiler/11.1/038/bin/ifortvars.csh intel64 (pt. Fortran)
[heri@fep-53-2 ~]$ . /opt/intel/impi/3.2.1/bin64/mpivars.csh (pt. 64bit arhitecture - default)
[heri@fep-53-2 ~]$ . /opt/intel/impi/3.2.1/bin/mpivars.csh (pt. 32biti, nesuportat pe clusterul nostru)
Environment-ul paralel pentru IntelMPI este intelmpi si intelmpi*1.
#!/bin/csh
source /opt/intel/Compiler/11.1/038/bin/iccvars.csh intel64
source /opt/intel/impi/3.2.1/bin64/mpivars.csh
setenv MPD_CON_EXT "sge_$JOB_ID.$SGE_TASK_ID"
mpiexec -np $NSLOTS ./hello_world.exe
Acest script il salvam sub numele de myscript.sh si se ruleaza cu comanda
qsub -q [coada] -pe [paralell_environment] [nr_sloturi] -cwd myscript.sh
Ex: qsub -q ibm-quad.q -pe openmpi 4 -cwd myscript.sh
(Mai mult detalii despre setup in acest articol).
Job-ul se urmareste cu comanda qstat, sau dupa preferinta watch qstat, iar output-ul se afla in fisierele myscript.*