Beowulf (computer)

sistema di calcolo parallelo basato su cluster di personal computer

In informatica Beowulf (dal nome del poema epico Beowulf) è un sistema di calcolo parallelo basato su cluster di personal computer collegati tramite reti informatiche standard, senza l'utilizzo di apparecchiature sviluppate esplicitamente per il calcolo parallelo.

Borg, un cluster Beowulf di 52 nodi utilizzato dalla McGill University pulsar group per cercare le pulsar binarie

Inizialmente venne sviluppato da Donald Becker y Thomas Sterling alla NASA,[1] ma in seguito lo sviluppo venne continuato da una comunità internazionale interessata al calcolo scientifico.

Descrizione modifica

Un Cluster Beowulf normalmente è un cluster di computer IBM compatibili utilizzanti software open source. Affinché un cluster di computer possa essere effettivamente considerato un "Beowulf" si richiede, che

  1. i vari computer in rete (detti nodi) e la rete stessa non abbiano un utilizzo diverso da quello del cluster stesso. In genere l'accesso al sistema e il suo controllo è possibile solo dal nodo principale, che spesso è l'unico dotato di tastiera e monitor. In alcuni casi i singoli nodi sono addirittura privi di memoria di massa e di dischi e il boot avviene via rete dal nodo principale o master;
  2. i nodi e lo stesso materiale di rete devono essere costituiti da macchine e apparati standard presenti in commercio al dettaglio;
  3. il sistema operativo e il software che gira sul cluster devono essere "open source". Usualmente il sistema operativo è GNU/Linux o una delle varie varianti di Unix disponibili gratuitamente;
  4. il Cluster risultante deve essere strutturato per compiere operazioni che richiedono potenza di calcolo particolarmente elevata; in altri termini un beowulf deve comportarsi come un Supercomputer.

Il fatto che i singoli nodi siano uguali (o almeno dotati di una potenza di calcolo analoga) è chiaramente apprezzabile in un Beowulf, ma non è considerato da tutti come una condizione necessaria. I collegamenti vengono realizzati tramite LAN TCP/IP, mentre la comunicazione e sincronizzazione dei processi vengono realizzate tramite librerie disponibili gratuitamente.

Un Cluster Beowulf non è gestito da un particolare software. Spesso si utilizzano librerie per il calcolo parallelo come le MPI (Message Passing Interface) e le PVM (Parallel Virtual Machine). Queste permettono al programmatore di dividere i compiti da svolgere su un gruppo di computer collegati in rete e di riunire i risultati dei singoli processi per ottenere la soluzione del problema trattato.

Sistemi operativi modifica

Attualmente molte distribuzioni Linux sono state realizzate appositamente per permettere la realizzazione di un sistema Beowulf in modo relativamente semplice.

Un cluster può essere realizzato semplicemente utilizzando un CD di boot della distribuzione Knoppix in congiunzione con openMosix. Il computer verrà automaticamente configurato e collegato al cluster con una semplice configurazione in modo da poter condividere la propria potenza di calcolo e memoria. Questa tipologia di sistema è molto scalabile, può essere infatti espansa in modo virtualmente illimitato (sempre che il canale di comunicazione non diventi il collo di bottiglia).

Esempi modifica

Altre soluzioni software modifica

Note modifica

  1. ^ (EN) Phil Merkey, Beowulf History, su Beowulf Org. URL consultato il 25 novembre 2018 (archiviato dall'url originale il 5 agosto 2004).
    «In late 1993, Donald Becker and Thomas Sterling began sketching the outline of a commodity-based cluster system designed as a cost-effective alternative to large supercomputers. In early 1994, working at CESDIS under the sponsorship of the HPCC/ESS project, the Beowulf Project was started.»

Voci correlate modifica

Altri progetti modifica

Collegamenti esterni modifica

  • UniClust, su uniclust.it. URL consultato il 10 febbraio 2010 (archiviato dall'url originale il 4 aprile 2010).
  • (EN) LinuxHPC.org.
  • (EN) Beowulf.org.
  • (EN) MPI homepage, su www-unix.mcs.anl.gov.
  • (EN) KLAT2, su aggregate.org.
  • (EN) Cluster Builder, su clusterbuilder.org. URL consultato il 26 luglio 2020 (archiviato dall'url originale il 12 luglio 2012).
  • (EN) Cluster Resources, su clusterresources.com. URL consultato il 3 marzo 2006 (archiviato dall'url originale il 13 aprile 2016).
  • (EN) LinuxClusters.com.
  • (EN) tutorials, su phy.duke.edu.
Controllo di autoritàLCCN (ENsh98005991 · J9U (ENHE987007546936105171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica