Quanti Core sono necessari?
All'inizio del millennio, quando la velocità dei processori superò la soglia del Gigahertz, alcuni predissero che le CPU Intel, basate sull'allora nuova architettura NetBurst, avrebbero raggiunto in futuro la velocità di 10 GHz. A quei tempi la regola era "volete più potenza?, aumentate la velocità di clock!".
Ovviamente, chi credeva in questa teoria prese una bella cantonata. La fisica non permette l'aumento esponenziale della velocità di clock senza che questa si traduca in un incremento esponenziale del calore prodotto, e c'è anche un certo numero di impedimenti tecnologici, come il processo produttivo stesso. Infatti, le CPU commerciali più veloci, ormai da qualche anno, lavorano a velocità comprese tra 3 e 4 GHz.
![]() | Intel Core i5-4440 | |
![]() | Intel Core i5-4690 | |
![]() | AMD AM3+ FX-8320 | |
![]() | AMD AM3+ FX-8350 | |
![]() | Intel Ci7 1150 i7-4790K | |
![]() | Intel Core i7-5930K |
Ovviamente il progresso non poteva fermarsi, specialmente per un'industria che macina milioni di dollari l'anno; gli ingegneri trovarono il modo per incrementare le prestazioni migliorando l'efficienza dei processori, anziché basarsi solo sulla velocità di clock. Il parallelismo stesso è una soluzione ormai condivisa da tutti - se non è possibile creare CPU più veloci, perché non abbinare la forza di due o più CPU?
Il problema del parallelismo è che il software deve essere ottimizzato in maniera tale da creare più thread in contemporanea da sottoporre alla CPU; è una tecnica che non paga immediatamente, differentemente dall'aumento della velocità di clock.
La prima CPU dual-core, infatti, non offriva un tangibile incremento prestazionale rispetto alle CPU single-core, poiché i software disponibili non erano stati progettati per funzionare con processori multi-core. Il risultato era che molte CPU dual-core erano più lente delle controparti single-core nella stragrande maggioranza dei software.
Tuttavia, da quattro anni a questa parte sono cambiate molte cose. Gli sviluppatori di software hanno imparato ad ottimizzare le proprie applicazioni così da avvantaggiarsi dei core aggiuntivi. Le CPU single-core, inoltre, sono ormai difficili da trovare, mentre quelle con due, tre o quattro core sono diventate la norma.
La domanda giusta da porsi ora è: di quanti core si ha realmente bisogno allo stato attuale? Un processore triple-core è indicato per i videogiochi, o sarebbe meglio un chip quad-core? Una CPU dual-core è sufficiente per un utente medio, o avere più core fa realmente la differenza? Quali applicazioni sono ottimizzate per più core e quali reagiscono a frequenze superiori o più memoria cache?