Avanti Indietro Indice

5. Eseguire task sul cluster

Questo paragrafo è ancora in evoluzione man mano che evolve l'utilizzo del cluster, ma finora tendiamo a scrivere insiemi proprietari di funzioni message passing per la comunicazione dei processi su macchine diverse.

Molte applicazioni, particolarmente nell'area della genomica computazionale, sono massivamente e banalmente parallelizzabili, vale a dire che si può ottenere una perfetta distribuzione ripartendo i task equamente tra le macchine (per esempio, quando si analizza un intero genoma usando una tecnica che opera su un singolo gene/proteina, ciascun processore in un dato istante può lavorare su un gene/proteina indipendente da tutti gli altri processori).

Finora non abbiamo trovato necessario usare un sistema professionale a code, ma ovviamente dipende fortemente dal tipo di applicazioni che si vogliono eseguire.

5.1 Benchmark grossolani

Per l'unico programma più importante che eseguiamo (il nostro programma di simulazione ab initio del ripiegamento delle proteine), utilizzando il processore Pentium 3 a 1 GHz come punto di riferimento, in media:

Xeon    1.7 GHz è circa il 22% più lento
Athlon  1.2 GHz è circa il 36% più veloce
Athlon  1.5 GHz è circa il 50% più veloce
Athlon  1.7 GHz è circa il 63% più veloce
Xeon    2.4 GHz è circa il 45% più veloce
Xeon    2.7 GHz è circa il 80% più veloce
Opteron 1.4 GHz è circa il 70% più veloce
Opteron 1.6 GHz è circa il 88% più veloce

Sì, l'Athlon 1.5 GHz è più veloce dello Xeon 1.7 GHz poiché lo Xeon esegue solo sei istruzioni per clock (IPC) mentre l'Athlon esegue nove IPC (fate voi i conti!). Comunque questo è un confronto assolutamente non rigoroso perché gli eseguibili sono stati entrambi compilati sulle macchine (quindi la qualità delle librerie matematiche per esempio avrà un suo impatto) e l'hardware di supporto è diverso.

5.2 Uptime

Queste macchine sono incredibilmente stabili sia in termini di hardware che di software una volta che sono state debuggate (in genere qualcuna in un nuovo gruppo di macchine ha problemi hardware), funzionando costantemente sotto carichi molto pesanti. Di seguito è dato un esempio. I reboot sono generalmente avvenuti quando è scattato un interruttore.

  2:29pm  per 495 giorni,  1:04,  2 utenti,  carico medio: 4.85, 7.15, 7.72


Avanti Indietro Indice