Strumenti Utente

Strumenti Sito


lca:servizi:calcolo

Calcolo: cluster per il calcolo numerico intensivo del Dipartimento di Fisica

Il servizio di calcolo numerico intensivo del Dipartimento di Fisica è affidato ad un cluster di macchine biprocessore. Il cluster ha come punto di accesso le macchine grid-ui.fis.unipr.it e emi-ui.pr.infn.it.

Architettura

architettura

Hardware

nome CPU modello RAM (GB) SisOP Note
emi-ui 1 Macchina virtuale Vmware 2 SL6 User Interface
grid-ui 2 Macchina virtuale Vmware 1 SL5 User Interface
emi-ce 1 Macchina virtuale Vmware 1 SL5 Job manager
Calcolo Seriale
c64-wn01 2 AMD Opteron 248 2.20 GHz 3 down
c64-wn02 2 AMD Opteron 248 2.20 GHz 3 down
c64-wn03 2 AMD Opteron 248 2.20 GHz 3 down
c64-wn04 2 AMD Opteron 248 2.20 GHz 3 down
c64-wn05 4 AMD Opteron 2212 2.00 GHz 4 SL5 x86_64 matlab
c64-wn06 8 Intel Xeon E5335 2.00 GHz 8 SL5 x86_64 matlab
c64-wn07 8 Intel Xeon E5335 2.00 GHz 8 SL5 x86_64 matlab
c64-wn08 6 Intel Xeon E5650 2.80 GHz 12 SL5 x86_64 matlab
c64-wn09 12 Intel Xeon E5650 2.80 GHz 24 SL5 x86_64 matlab
Calcolo parallelo
grid-wn81 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 GRID
grid-wn82 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 GRID
grid-wn83 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 GRID
grid-wn84 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 GRID
grid-wn85 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 INFN
grid-wn86 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 INFN
grid-wn87 8 (+HT) Intel Xeon E5520 2.27 GHz 12 SL 6 INFN
grid-wn88 8 (+HT) Intel Xeon E5530 2.40 GHz 12 SL 6 INFN (Proliant HP, ex Alba)

Software

Benchmark

OpenMosix

Un software specifico, OpenMosix, si preoccupa di suddividere ed ottimizzare il carico di lavoro su tutti in nodi con architettura 32 bit.

Monitor dell'attività del cluster

Ganglia 3.0.2 Report grafico

Programmi di calcolo

Matlab R14 (Service Pack 3)
Mathematica 5.2 Licenze in uso

Compilatori GNU C/C++/Fortran (versione 3.2.2)

gcc
g++
g77

Compilatori GNU C/C++/Fortran (versione 4.1.0)

i686-unknown-linux-gnu-gcc
i686-unknown-linux-gnu-g++
i686-unknown-linux-gnu-g77
i686-unknown-linux-gnu-gfortran

Compilatori GNU C/C++/Fortran per creare programmi a 64 bit (versione 4.1.0)

x86_64-unknown-linux-gnu-gcc
x86_64-unknown-linux-gnu-g++
x86_64-unknown-linux-gnu-g77
x86_64-unknown-linux-gnu-gfortran

Compilatori Intel C/C++/Fortran (versione 9.0)

icc
ifort

Utilizzo del cluster

L'accesso è riservato allo staff del Dipartimento di Fisica ed agli studenti in tirocinio presso il Dipartimento di Fisica dopo esplicita richiesta al Laboratorio di Calcolo Avanzato.

Compilatori per creare programmi a 64 bit e code dedicate consentono un utilizzo non interattivo del nodo con architettura a 64 bit.

Statistiche utilizzo del cluster

Spazio disco

percorso accessile da quota mirror backup
/home/staff calcolo archimede SI SI SI
/work/staff calcolo archimede NO SI NO
/space/staff calcolo archimede SI SI NO
/home/studenti c32-ui03 c32-ui04 SI SI SI
/work/studenti c32-ui03 c32-ui04 NO SI NO

Nodi di calcolo

nodo 32 bit 64 bit OpenMosix limite job in run
c32-ce SI NO SI 10
c64-wn01 SI SI NO 2
c64-wn02 SI SI NO 2
c64-wn03 SI SI NO 2
c64-wn04 SI SI NO 2
c64-wn05 SI SI NO 4
c64-wn06 SI SI NO 8
c64-wn07 SI SI NO 8

Code

Sul cluster è attivo un server PBS (Portable Batch System) che gestisce la sottomissione dei job. L'utente ha a disposizione sette code con differenti caratteristiche. La coda fast è indicata per job che richiedono la massima velocità di esecuzione. Solo alcuni utenti sono autorizzati ad utilizzarla. La coda long è la coda più adatta ai job di lunga durata. È la coda di default attiva sul server PBS. La coda didattica è riservata agli studenti. La coda matlab consente di lanciare script o comandi Matlab. La coda long64 è indicata per job a 64 bit. La coda fast64 è indicata per job a 64 bit. Solo alcuni utenti sono autorizzati ad utilizzarla. La coda stat64 è indicata per job a 64 bit. Solo alcuni utenti sono autorizzati ad utilizzarla.

coda nodi limite job in run limite job in run per utente riservata
fast c32-ce 2 2 SI
long c32-ce 10 4 NO
didattica c32-ce 6 6 SI
matlab c32-ce c64-wn[01-07] 2 1 NO
long64 c64-wn[01-07] 28 4 NO
fast64 c64-wn[01-07] 12 12 SI
stat64 c64-wn[01-07] 16 16 SI

Restrizioni globali

massimo numero job in run per utente
20

Sottomissione dei job con creazione automatica dello script PBS

Il comando lca-job-submit permette la sottomissione di job sulle code sgravando l'utente dalla necessita di creare uno script PBS per ogni job.

Per informazioni aggiornate su lca-job-submit:

lca-job-submit --help

Per conoscere la versione di lca-job-submit:

lca-job-submit --version

Per sottomettere un programma a 32 bit:

lca-job-submit job
lca-job-submit --queue=long job

Nei due casi il risultato è lo stesso perché è la long la coda di default.

Per sottomettere un programma a 32 bit che accetta opzioni ed argomenti:

lca-job-submit job --size=100x100 job.conf

Per sottomettere un programma a 64 bit:

lca-job-submit --queue=long64 job

Per sottomettere un programma a 64 bit ottimizzato per processori AMD Opteron:

lca-job-submit --queue=long64 --nodes=1:opteron job

Per sottomettere un programma a 64 bit ottimizzato per processori Intel Core 2:

lca-job-submit --queue=long64 --nodes=1:core2 job

Per sottomettere un programma a 64 bit ottimizzato per processori westmere:

lca-job-submit --queue=long64 --nodes=1:westmere job

Per sottomettere uno script Matlab:

lca-job-submit --queue=matlab job

All'avvio del job, alla conclusione o all'interruzione del job, PBS invia all'utente una e-mail di notifica.

Attenzione! Non spostare o cancellare il programma mandato in coda prima dell'avvio del job.

Un programma a 32 bit, lanciato con lca-job-submit sulla coda long64, verrà eseguito correttamente.

Un programma a 64 bit, lanciato con lca-job-submit sulle code fast e long, verrà automaticamente sottomesso sulla coda long64.

Esempio di sottomissione del programma hostname:

[fabio.spataro@calcolo ~]$ lca-job-submit hostname
lca-job-submit: PBS JOB 21.c32-ce.fis.unipr.it
lca-job-submit: PBS script written to ~/.lca/pbs/21.c32-ce.sh

Al termine del programma, lo standard error verrà scritto in hostname.e21, lo standard output in hostname.o21. I due file verranno creati nella directory corrente al momento del lancio di lca-job-submit.

Creazione automatica dello script PBS senza sottomissione del job

Esempio:

[fabio.spataro@calcolo ~]$ lca-job-submit --queue=long64 --dry-run hostname
lca-job-submit: PBS JOB not submitted
lca-job-submit: PBS script written to ~/.lca/pbs/hostname

Sottomissione di uno script PBS

Esempio:

qsub hostname

Consultare la pagina man di qsub per informazioni sul formato dello script PBS.

All'avvio del job, alla conclusione o all'interruzione del job, PBS invia all'utente una e-mail di notifica.

Al termine del programma, lo standard error verrà scritto in hostname.e21, lo standard output in hostname.o21. I due file verranno creati nella directory corrente al momento del lancio di qsub.

Un programma a 32 bit, lanciato sulla coda long64 dallo script PBS, verrà eseguito correttamente.

Un programma a 64 bit, lanciato sulle code fast e long dallo script PBS, non verrà eseguito e terminerà con errore.

Controllo dello stato delle code e dei job

Esempi:

qstat
qstat -f 21
qstat -u $USER
qstat -u $USER -n
qstat -Q

Consultare la pagina man di qstat per ulteriori informazioni.

Cancellazione di un job

Esempio:

qdel 21

Consultare la pagina man di qdel per ulteriori informazioni.

Scambio dell'ordine d'esecuzione di due job in coda

Esempio:

qorder 21 22

Consultare la pagina man di qorder per ulteriori informazioni.

Spostamento di un job da una coda all'altra

Esempio:

qmove long 21

Consultare la pagina man di qmove per ulteriori informazioni.

Crystal

Per l'utilizzo del software crystal e' necessario collegarsi in SSH su emi-ui.pr.infn.it

Per eseguire la sottomissione di job paralleli deve essere utilizzata la coda parallel

lca/servizi/calcolo.txt · Ultima modifica: 29/09/2014 15:26 da roberto.alfieri