Skip to main content

Quali sono i diversi tipi di tecnologia di elaborazione parallela?

L'elaborazione parallela è un tipo di elaborazione del computer in cui le attività di elaborazione di grandi dimensioni vengono suddivise in secondi secondari più piccoli che vengono quindi elaborati simultaneamente o in parallelo, piuttosto che in sequenza.Questa tecnologia è ampiamente utilizzata nel calcolo moderno, in particolare per problemi avanzati come quelli trattati nelle scienze naturali.Esempi di tecnologia di elaborazione parallela all'interno di un singolo dispositivo includono multiprocessing simmetrico ed elaborazione multicore.Più computer possono anche essere collegati insieme per lavorare in parallelo attraverso metodi come calcolo distribuito, cluster di computer e computer massicciamente paralleli.

Un multiprocessore simmetrico è un computer con una singola istanza comune di memoria principale e sistema operativo collegato a più processori identici.I processori hanno le stesse capacità e sono collegati a una memoria comune, quindi le attività possono essere facilmente assegnate o riassegnate secondo necessità per bilanciare il carico di lavoro tra di loro.Nell'elaborazione multicore, ciascun processore contiene almeno due unità di elaborazione centrali (CPU), chiamate core, che sono responsabili della lettura e dell'esecuzione delle istruzioni.In sostanza, un processore multicore è in realtà più processori in un unico componente integrato.Ciò consente una comunicazione più rapida ed efficiente tra i core di elaborazione, rispetto ai computer multiprocessori in cui ciascuna CPU è un componente separato.

I computer multiprocessore sono ampiamente utilizzati nelle applicazioni scientifiche e aziendali.È meno comune nei sistemi personali, che di solito sono progetti uniprocessori, sebbene i multiprocessori siano diventati più comuni nel mercato dei consumatori.Il software per computer deve essere progettato specificamente per i computer multiprocessore per sfruttare appieno i vantaggi che può offrire e questo tipo di software ha spesso problemi di prestazioni su un computer a singolo processore.Allo stesso modo, i programmi scritti con un singolo processore in mente di solito ottengono solo benefici limitati dal multiprocessing perché non sono progettati per trarne vantaggio.

La tecnologia di elaborazione parallela distribuita utilizza computer più indipendenti che lavorano su diverse parti di un problema in parallelo, collegati tramite Internet o una rete interna in modo che possano comunicare tra loro.Questo tipo di tecnologia di elaborazione parallela può essere utilizzato con computer che sono fisicamente distanti l'uno dall'altro, sebbene non sia necessariamente così.Insieme, i computer collegati formano quella che viene chiamata griglia computazionale.

Le griglie computazionali possono essere molto grandi, potenzialmente incorporando migliaia di computer che potrebbero essere diffusi in tutto il mondo.Questi computer potrebbero anche lavorare su problemi non correlati contemporaneamente, con le attività che vengono svolte dalla griglia distribuita tra i computer in base alla quantità di capacità di elaborazione di riserva che ognuno ha in quel momento.La grid computing differisce dalla maggior parte degli altri moderni calcoli paralleli perché una singola griglia spesso include una vasta gamma di computer di capacità variabili, piuttosto che un gruppo di unità identiche. I cluster per computer sono una forma di tecnologia di elaborazione parallela in cui più computer collegati, di solitoCon capacità identiche, lavorare a stretto contatto come una singola unità.A differenza del multiprocessing simmetrico, che utilizza più processori che condividono una memoria comune e un sistema operativo, ogni singola unità in un cluster è un computer autonomo completo.Questi di solito si trovano nella stessa posizione geografica e sono collegati su una rete locale.Alcuni computer sono costruiti specificamente per l'uso in cluster di computer, ma anche i cluster possono essere formati collegando i computer originariamente progettati per funzionare autonomamente.

I computer massicciamente paralleli hanno alcune somiglianze con i computer a cluster, perché sono anche composti da più computer uniti insieme, ma sono molto più grandi e di solito contengono centinaiaS o migliaia di nodi.Hanno anche i loro componenti specializzati che collegano i singoli computer che lo comprendono insieme, mentre i cluster di computer sono uniti da hardware standard e standard spesso indicato come componenti delle materie prime.I computer massicciamente più avanzati possono essere veramente colossali, contenenti decine di migliaia di singoli computer che riempiono migliaia di piedi quadrati di spazio, tutti lavorando insieme.La maggior parte dei supercomputer avanzati del mondo, utilizzati per calcoli complessi in aree come l'astrofisica e la modellazione climatica globale, sono di questo tipo.