next up previous contents
Next: Caratteristiche del Cluster Up: Cluster, l'idea di base Previous: Perché usare un cluster   Indice

Caratteristiche generali

Un cluster é `in principio'' un insieme di computers conessi da un rete locale. Normalmente esistono moltissime variazioni di questo concetto base. La struttura hardware dei nodi di un cluster puó essere principalmente eterogenea o omogenea. Un cluster omogeneo presenta nell'hardware dei vari nodi lo stesso set di componenti: stessi processori, stesse schede madri, stessi hard disks, stessa quantitá di memoria RAM, ecc. Quest'uniformitá dell'hardware semplifica le varie configurazioni per tutti i nodi, essendo sempre le stesse, e quindi velocizza la realizzazione di tutto il sistema. Un cluster omogeneo dal punto di vista dell'hardware é anche omogeneo dal punto di vista delle prestazioni di ogni singolo nodo e quindi il bilanciamento dei carichi di lavoro per i vari nodi é piú semplice ed intuitivo.

D'altro canto non sempre si puó affrontare la spesa di un consistente numero di macchine tutte identiche. A volte conviene utilizzare computers giá operativi e riciclarli per costituire un cluster. Oppure se all'interno del cluster si vuole, per esempio, differenziare le macchine per lo storage, dalle macchine per la computazione, l'hardware deve essere differenziato per ottimizzare l'una o l'altra mansione. Le scelte standard di connessioni di rete sono principalmente le seguenti:

  1. Connessini via Ethernet utilizzando Switch.
  2. Reti dedicate ( per esempio Myrinet) con prestazioni mediamente 5 volte superiori, ma con costi maggiori.
Noi usiamo una variazione del punto 1.

Un cluster non é solo componentistica hardware, ma anche una struttura software atta a parallelizzare le varie procedure sfruttando le peculiaritá del sistema creato. Per fare questo sono nati svariati software per gestire l'attivitá computazionale parallela. Naturalmente ogni software disponibile predilige aspetti diversi e quindi determina performance diverse a seconda di come viene utilizzato. Ci sono software che creano strumenti di parallizzazione delle procedure a basso livello, mentre altri rendono il tutto piú trasparente dal punto di vista dell'utente.

Tutta la struttura del software per la creazione del cluster deve essere comunque supportata dall'utilizzo di un sistema operativo atto a tale scopo. É di importanza cruciale scegliere un sistema operativo che valorizzi gli aspetti della computazione parallela e che comunque sia il piú adatto possibile alle esigenze che hanno i futuri utenti del cluster. La scelta di un sistema operativo non all'altezza come performance o come flessibilitá di configurazione puó aumentare il tempo necessario alla realizzazione del sistema e fornire performances finali inferiori rispetto alle reali potenzialitá dell'hardware utilizzato. Quindi é consigliabile, nel caso si decida a priori di utilizzare un determinato sistema operativo, orientare l'acquisto dell'hardware verso le case costruttrici che garantiscono una compatibilitá totale per poterne sfruttare tutte le features che il componente ha in sé.


next up previous contents
Next: Caratteristiche del Cluster Up: Cluster, l'idea di base Previous: Perché usare un cluster   Indice
Mario Cavicchi 2004-07-22