Processore multicore: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Recupero di 1 fonte/i e segnalazione di 0 link interrotto/i.) #IABot (v2.0.9.5
fix
Riga 16:
Difatti si giunse a un punto tale per cui aumentare ulteriormente le frequenze delle CPU, malgrado le dimensioni minime dei [[transistor]], comportava ormai consumi troppo elevati in relazione al modesto aumento di prestazioni<ref>a quei tempi un processore single core top di gamma superava abbondantemente i 100 W di consumo massimo</ref> 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 [[calcolo parallelo|parallelismo]] in modo da poter aumentare il numero di operazioni eseguibili in un unico ciclo di clock. 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]] ovvero parallelizzati anch'essi 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 coremulticore 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]]".
 
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 più generico processore multi coremulticore. 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.
 
=== Le prime CPU multicore ===
I primi esemplari di CPU multi coremulticore vennero presentati da [[IBM]] con l'introduzione linea [[POWER4]] nel 2001. Tuttavia fu solo nel 2005 che l'interesse del mercato mondiale verso la tecnologia multi coremulticore divennne rilevante: in quell'anno i due maggiori produttori di CPU al mondo, [[Intel]] e [[Advanced Micro Devices|AMD]], misero in commercio i primi esemplari di una nuova generazione di microprocessori per il mercato consumer, basati sui rispettivi prodotti esistenti ma contenenti due core.
Si trattava delle famiglie di processori [[Pentium D]] dalla parte di Intel, e di [[Opteron]] e [[Athlon 64 X2]] dalla parte di AMD.
 
Riga 33:
{{vedi anche|Architettura dual core}}
 
Esistono differenti approcci attraverso i quali si possono realizzare chip multi coremulticore, ciascuno con precise peculiarità.
 
Ci sono casi in cui ci possono essere prodotti con un numero dispari di core, come il triple core di AMD (Athlon II X3 435). Questo tipo di architettura, rispetto alla [[single core]], consente di aumentare la potenza di calcolo di una CPU senza aumentare la [[Clock|frequenza di clock]] di lavoro, a tutto vantaggio del [[calore]] dissipato (che diminuisce rispetto nel caso di più processori separati) così come l'energia assorbita.