Multi core

Da Wikipedia, l'enciclopedia libera.

In elettronica il termine Multi core viene utilizzato per indicare una CPU composta da 3 o più core, ovvero da più nuclei di processori "fisici" montati sullo stesso package.

Il termine Multi core è ovviamente generico e, sebbene adatto anche a descrivere CPU a 2 soli core, viene comunemente utilizzato per indicare specificatamente quelle dotate di almeno 3 core, dal momento che esistono termini specifici per indicare le soluzioni single core, dual core e quad core (1, 2 o 4 core). Questo tipo di architettura consente di aumentare la potenza di calcolo di una CPU senza aumentare la frequenza di clock di lavoro, a tutto vantaggio del calore dissipato (che diminuisce rispetto al caso di più processori separati) così come l'energia assorbita.

I primi esemplari di CPU multi core per il mercato consumer vennero presentati da Intel alla fine del 2006, mediante i processori Core 2 Extreme e Core 2 Quad basati su core Kentsfield, mentre la rivale AMD lanciò i nuovi Phenom solo alla fine del 2007.

Dai processori Dual Core ai Multi Core[modifica | modifica sorgente]

Nel corso del 2003 arrivarono i primi chip dual core per mercato desktop, grazie a AMD che presentò i primi Opteron e l'Athlon 64 X2 ; in quel periodo si era giunti ad un livello tecnologico di sviluppo hardware che non consentiva più di aumentare la potenza di elaborazione incrementando semplicemente la frequenza di clock. Fino a quel momento il continuo aumento delle prestazioni era stato basato soprattutto sull'aumento della frequenza operativa grazie alle innovazioni offerte dai processi produttivi sempre più miniaturizzati. Si giunse però a un punto tale per cui aumentare ulteriormente le frequenze delle CPU single core, malgrado le dimensioni minime dei transistor, comportava ormai consumi troppo elevati in relazione al modesto aumento di prestazioni (a quei tempi un processore single core top di gamma superava abbondantemente i 100 W di consumo massimo) e questo ovviamente aveva serie ripercussioni anche sul gravoso problema del raffreddamento dei circuiti.

La soluzione che sembrò più ovvia ai progettisti di microprocessori fu quella di puntare tutto sul parallelismo in modo da poter aumentare il numero di operazioni eseguibili in un unico ciclo di clock [senza fonte]. Questo nuovo approccio comunque non era del tutto indolore e comportava anche alcuni svantaggi, in quanto i programmi dovevano essere ottimizzati per un utilizzo multi-thread [senza fonte] parallelizzati anch'essi (ciascun programma eseguito in più parti) per poter sfruttare appieno le caratteristiche di questi processori, in caso contrario essi avrebbero impegnato solo uno dei core, lasciando l'altro pressoché inutilizzato. Paradossalmente, era anche possibile che un programma applicativo non pensato per un'esecuzione di tipo parallelo, risultasse di più lenta esecuzione su un processore multi core rispetto a uno single core, e infatti al momento del lancio dei primi esemplari, erano veramente pochi i software già pronti per queste nuove architetture. Tale incapacità di raggiungere i livelli di prestazione teorici dei sistemi a parallelismo massiccio è nota come sindrome di von Neumann [senza fonte].

Il problema citato si presentò ovviamente già con i primi processori dual core, e a maggior ragione era evidente con i primi processori a 4 core che richiedevano ancora di più l'esistenza di applicazioni ottimizzate per poter esprimere il proprio potenziale, ma in ogni caso si trattò ovviamente di un problema transitorio. Diversi analisti software infatti, prevedevano già allora che se il software pensato per un utilizzo parallelo in ambito dual core fosse stato realizzato in maniera oculata, tenendo conto non del funzionamento su un sistema dual core, ma su un sistema a più core, esso non avrebbe richiesto poi grosse modifiche per essere utilizzato su un dual core o su un quad core. Secondo altri invece, gli sforzi necessari per realizzare software multi processore che avrebbe funzionato in maniera ottimale saturando tutti i core e non occupandoli in modo disomogeneo sarebbero stati esagerati in relazione con i reali vantaggi, soprattutto di impatto di costi. Su una materia tanto nuova in ambito desktop, ai tempi non si poteva fare altro che attendere maggiori dettagli, ma il tempo ha poi portato gli sviluppatori ad acquisire sempre maggiore esperienza e dimestichezza con la programmazione parallela e molti dei timori dei primi giorni risultano ormai superati.[senza fonte]

Primi processori Multi core[modifica | modifica sorgente]

Come accennato nell'introduzione, Intel ha avuto il merito di rendere i processori a 4 core disponibili per il grande pubblico mediante i Core 2 Extreme e Core 2 Quad basati su core Kentsfield, ma i primi processori multi core vennero presentati sul mercato verso la fine del 2005; si tratta del Cell, sviluppato congiuntamente da IBM, Sony e Toshiba per il mercato console/blade server e composto da 8 core eterogenei, e l'UltraSPARC T1, processore a 8 core omogenei sviluppato da Sun Microsystems per il mercato server (In particolare per Web server con numerosi accessi) capace di gestire 32 thread simultaneamente.

Questo tipo di architettura, al pari dei sistemi dual core e, più generalmente, di tutti i sistemi biprocessore e multiprocessore, consente di aumentare la potenza di calcolo senza aumentare la frequenza di lavoro, a tutto vantaggio del calore dissipato, oltre a garantire maggiori prestazioni in ambiti molto specifici dove più che un'alta potenza di calcolo è richiesto un grande parallelismo.

Considerazioni sui processori Dual/Multi core[modifica | modifica sorgente]

Esistono differenti approcci attraverso i quali si possono realizzare chip multi core, ciascuna con precise peculiarità; per ulteriori informazioni si rimanda alle seguenti voci di approfondimento che, sebbene riferite a processori dual core, espongono comunque concetti di carattere generale che ben si adattano anche a considerazioni su CPU a più core:

Voci correlate[modifica | modifica sorgente]

Collegamenti esterni[modifica | modifica sorgente]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica