Condor
e' un sistema di HTC (High Throughput Computing) installato presso il
Dipartimento di
Ingegneria Aerospaziale
del Politecnico di Milano.
Il concetto fondamentale consiste nell'approfittare
delle CPU inutilizzate (per esempio di notte) da tutti i PC che fanno parte
del pool, mediante l'esecuzione remota dei jobs che viene pero' interrotta
nel momento in cui il proprietario del PC su cui sta avvenendo l'esecuzione
ha bisogno della sua CPU.
Il meccanismo di migrazione dei jobs e di checkpointing
(salvataggio completo di un calcolo, in modo da poterlo riavviare su un'altra
macchina) e' trasparente all'utente.
Con un pool di una decina di macchine, grazie al Condor
durante una notte si possono avere i risultati di una decina di calcoli ognuno
dei quali richiede una decina di ore di CPU. Non si tratta quindi di vero
e proprio calcolo parallelo, ma di HTC: tanti calcoli seriali eseguiti in
parallelo.
Per eseguire un programma il cui sorgente si chiama
dns.c e l'eseguibile dns.exe occorre:
- Compilare il programma con le librerie di Condor:
$> condor_compile make dns.exe
dove make dns.exe e' il comando utilizzato
solitamente per compilare il codice.
- Inviare l'eseguibile per l'esecuzione nel pool
di macchine disponibili:
$> condor_submit submit_file
dove submit_file e' un file nel formato:
Executable = dns.exe
Universe = standard
output = output.dns
error = error.dns
log = log.dns
Queue
Altri comandi utili sono:
- condor_status per verificare lo stato
del pool
- condor_q per verificare la coda di
lavori nel pool
- condor_rm per eliminare un proprio
lavoro dalla coda
Per informazioni e opzioni avanzate potete consultare il
manuale
|