User Tools

Site Tools


strutture:pi:computing_center:theocluster:job:esempio_-_example

Esempio - Example


Dopo aver effettuato l'accesso via ssh all'indirizzo della User Interface dedicata al cluster Zefiro localui3.pi.infn.it mediante:

 ssh username@localui3.pi.infn.it 

DEBUG

Per agevolare un utente che non volesse effettuare un bsub indicando tutti i parametri in modo manuale come mostrato nella sezione di spiegazione delle code, è stato previsto lo script bash chiamato mpiSubmit.sh dove vanno specificati come parametri il nome della coda da utilizzare (in questo caso debug o longDebug), il numero dei jobslot, l'eseguibile mpi ed eventuali parametri; così facendo verrà eseguito in automatico il file precedentemente compilato sulla coda appositamente prevista compilation. E' possibile scaricare lo script dall'indirizzo mpiSubmit.sh e dovrà essere copiato nella propria home directory /home/users/username insieme al file del job su cui fare il Debug.

Il comando per far partire il debug di un file eseguibile a.out (generato da una compilazione precedente) su una delle due code preveiste (in questo caso la coda debug), riservando 2 jobslot, (lo stesso potrebbe essere fatto su longDebug) e comunque stabilendo un numero di jobslot massimo consentito secondo quanto stabilito nella pagine di definizione delle code, sarà

 ./mpiSubmit.sh debug 2 a.out 

In questo caso verranno stampato su monitor:

Job <4234> is submitted to queue <debug>
Job /home/users/nomeutente/a.out submitted!

Per conoscere ulteriori informazioni su proprio job:

 bjobs -l <job_id> 

nel nostro caso

 bjobs -l 4234 

Nella home directory dell'utente verranno generati il file a.out.err (elenco errori nella esecuzione), a.out.out(tutte le informazioni di output della esecuzione).


COMPILAZIONE

Per agevolare un utente che non volesse effettuare un bsub indicando tutti i parametri in modo manuale come mostrato nella sezione di spiegazione delle code, è stato previsto lo script bash mpiCompile.sh che riceve come parametri il nome della coda (come coda va ovviamente specificata "compilation" che è l'unica presente) , il numero dei jobslot, l'eseguibile mpi ed eventuali parametri; lo script punta in automatico al compilatoreMPI mpicc presente su tutti i nodi del cluster e permette quindi con un singolo comando di poter lanciare alla code dedicata la compilazione del proprio job. E' possibile scaricarlo dall'indirizzo mpiCompile.sh e deve essere copiato nella propria home directory /home/users/username insieme al file del job su cui fare la compilazione.

Supponendo di voler sottomettere la compilazione del proprio job, in questo caso un semplice programma scritto in linguaggio C, chiamato prova.c ovviamente alla coda compilation riservando implicitamente 1 jobslot (che è il numero massimo consentito secondo quanto indicato nella sezione di spiegazione della coda).Lo script in linguaggio C è un semplice 'Hello World from' con indicazione di tutti i nodi dal quale viene lanciato. Anche questo file è scaricabile dall'indirizzo prova.c Nello specifico sarà:

/*The Parallel Hello World Program*/

#include <stdio.h>
#include <mpi.h>
main(int argc, char * *argv)
{
int node;
MPI_Init(&argc,&argv);
MPI_Comm_rank(MPI_COMM_WORLD, &node);
printf("Hello World from Node %d\n",node);
MPI_Finalize();
}

Il comando da lanciare sarà:

 ./mpiCompile.sh compilation prova.c 

In questo caso verranno stampati su monitor il numero assegnato al job e la coda a cui è stato sottomesso, nel nostro caso:

Job <2400> is submitted to queue <compilation>.

Per conoscere ulteriori informazioni su proprio job:

 bjobs -l <job_id> 

nel nostro caso

 bjobs -l 2400 

Nella home directory dell'utente verranno generati il file prova.c.err(elenco errori), prova.c.out(tutte le informazioni di output) ed il file a.out(il file eseguibile di prova.c).


SOTTOMISSIONE

Per agevolare un utente che non volesse effettuare un bsub indicando tutti i parametri in modo manuale come mostrato nella sezione di spiegazione delle code, è stato previsto lo script bash chiamato mpiSubmit.sh dove vanno specificati come parametri il nome della coda da utilizzare, in questo parallel(lo stesso può essere fatto indicando gli opportuni parametri anche per la coda longparallel e neparallel), il numero dei jobslot, l'eseguibile mpi ed eventuali parametri; così facendo verrà eseguito in automatico il file precedentemente compilato sulla coda appositamente prevista compilation. E' possibile scaricare lo script dall'indirizzo mpiSubmit.sh e dovrà essere copiato nella propria home directory /home/users/username insieme al file del job su cui fare la sottomissione.

Il comando per far partire la sottomissione di un file eseguibile a.out (generato da una compilazione precedente) su una delle due code preveiste (in questo caso la coda Parallel, riservando 6 jobslot, (lo stesso potrebbe essere fatto su longparallel e neparallel) e comunque stabilendo un numero di jobslot massimo consentito secondo quanto stabilito nella pagine di definizione delle code, sarà

 ./mpiSubmit.sh parallel 6 a.out 

In questo caso verranno stampato su monitor:

Job <4234> is submitted to queue <parallel>
Job /home/users/nomeutente/a.out submitted!

Per conoscere ulteriori informazioni su proprio job:

 bjobs -l <job_id> 

nel nostro caso

 bjobs -l 4234 

Nella home directory dell'utente verranno generati il file a.out.err (elenco errori nella esecuzione), a.out.out(tutte le informazioni di output della esecuzione).



Per annullare un job attivo (in coda o running) si puo' usare bkill

 bkill <job_id> 

Assistenza

Per qualsiasi dubbio o informazione potete mandare una mail all'IT Division all'indirizzo:

localq-support@lists.pi.infn.it

Verrete contattati al più presto dal gruppo.






english version

Example


After ssh access to the dedicated interface localui3.pi.infn.it by:

 ssh username@localui3.pi.infn.it 

DEBUG

In order to facilitate users who does not wish to make a bsub indicating all of the parameters manually, it was predicted a script called mpiSubmit.sh which must be specified as parameters the name of the queue to be used(Debug or longDebug), the number of jobslot, the executable mpi and any parameters. The script can be downloaded from mpiSubmit.sh and must be copied into your home directory /home/users/username with the file to debug.

The command to start the debug of an executable file a.out (generated from a previous build) on one of the two queues available (in this case the Debug queue), reserving 2 jobslot, (the same could be done on longDebug) and however, establishing a number of jobslot maximum allowed, it will be

 ./mpiSubmit.sh Debug 2 a.out 

In this case will be printed the number assigned to the job and the queue used:

Job <4234> is submitted to queue <debug>
Job /home/users/nameofuser/a.out submitted!

To find more information about the job:

 bjobs -l <job_id> 

In this case:

 bjobs -l 4234 

In the user's home directory the files generated will be called a.out.err (list of errors) and a.out.out (all output information of the running phase).


COMPILATION

In order to facilitate users who does not wish to make a bsub indicating all of the parameters manually, it was predicted a script called mpiCompile.sh which receives as parameters the name of the queue ("compilation" that is the only available at the moment), the number of jobslot, the mpi executable and any parameters, the script automatically use the mpicc MPI compiler present on all of nodes. The script can be downloaded from mpiCompile.sh and must be copied into your home directory /home/users/username with the file to compile.

For example, if user want to compile a simple C program called prova.c on compilation queue, using 1 jobslot (which is the only one availble for the queue). The C program is a simple 'Hello World from' which indicates all the nodes from which it is started. The C program can be downloaded from prova.c The Parallel Hello World Program:

/*The Parallel Hello World Program*/

#include <stdio.h>
#include <mpi.h>
main(int argc, char * *argv)
{
int node;
MPI_Init(&argc,&argv);
MPI_Comm_rank(MPI_COMM_WORLD, &node);
printf("Hello World from Node %d\n",node);
MPI_Finalize();
}

The command to run must be:

 ./mpiCompile.sh compilation prova.c 

In this case will be printed the number assigned to the job and the queue used:

Job <2400> is submitted to queue <compilation>.

To find more information about the job:

 bjobs -l <job_id> 

In this case:

 bjobs -l 2400 

In the user's home directory the files generated will be called prova.c.err(list of errors), prova.c.out(output informations) and a.out(the executable files).


SUBMISSION

In order to facilitate users who does not wish to make a bsub indicating all of the parameters manually, it was predicted a script called mpiSubmit.sh which must be specified as parameters the name of the queue to be used, in this case the queue parallel(the same can be done by indicating the appropriate parameters for longparallel and neparallel queues), the number of jobslot, the mpi executable and any other parameters. The script can be downloaded from mpiSubmit.sh e dovrà essere copiato nella propria home directory /home/users/username insieme al file del job su cui fare la sottomissione.

The command to start an executable file a.out (generated from a previous build) on one of the two queues available (in this case the Parallel queue, reserving 6 jobslot, (tha same can be to do on the longparallel and neparallel queues) establishing a number of jobslot maximum allowed, it will be:

 ./mpiSubmit.sh Parallel 6 a.out 

In this case will be printed the number assigned to the job and the queue used:

Job <4234> is submitted to queue <parallel>
Job /home/users/nameofuser/a.out submitted!

To find more information about the job:

 bjobs -l <job_id> 

In this case:

 bjobs -l 4234 

In the user's home directory the files generated will be called a.out.err (list of errors) and a.out.out (all output information of the running phase).



To kill a job can be used the bkill command

 bkill <job_id> 

to request help

For any questions or information users can send an email to the IT Division:

localq-support@lists.pi.infn.it

You'll be contacted asap by a member's group.

strutture/pi/computing_center/theocluster/job/esempio_-_example.txt · Last modified: 2013/12/23 14:17 by carusog@infn.it

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki