Indice articoli



Cpu
004La cpu, o processore è l'unità elaborativa principale del computer ed è in buona parte responsabile delle sue prestazioni. Attualmente ci sono diversi aspetti cruciali su cui fare attenzione.






Numero di core (dual, quad o exa?)
005

Da qualche anno a questa parte, vista l'impossibilità di migliorare sostanzialmente le prestazioni della CPU, sia AMD che Intel hanno intrapreso la strada di integrare più unità elaborative all'interno di un unico package. Queste unità che corrispondono praticamente ad un processore vero e proprio sono detti core.

Il beneficio di passare da uno a più core è sostanziale in quanto migliora sensibilmente le prestazioni del computer quando si eseguono più applicazioni contemporaneamente (multitasking). Infatti, se un'applicazione piuttosto onerosa in termini di risorse va a impegnare un intero core, avremo ancora un altro core a disposizione per eseguire le comuni applicazioni.

Attualmente per il mercato desktop sono previste CPU con un numero massimo di core pari a 8, ma questo numero sembra essere destinato ad aumentare.

Senza dilungarci cerchiamo di capire in quali casi è effettivamente necessario un octa-core, un exa core o un quad core e in quali casi un dual core è sufficiente o addirittura migliore (in particolar modo considerando il prezzo).

Essenzialmente dipende dalla tipologia di applicazioni che l'utente utilizza più frequentemente.

Trascuriamo prima di tutto tutte quelle applicazioni poco esose in termini di risorse di calcolo (quali navigazione, videoscrittura, istant messaging e simili applicazioni di uso comune),tra le applicazioni esose in termini di calcolo più diffuse, troviamo i videogiochi, che oltre a una scheda video potente richiedono anche una buona CPU. Una parte dei videogiochi non beneficia però di un numero di core maggiore di due, in quanto la struttura di questi programmi non è di tipo multithreading, ovvero non riesce a separare le operazioni di calcolo su diversi processi in grado di essere eseguiti su core diversi.

Tutte quelle applicazioni che riescono invece a sfruttare il multi-threading, hanno un grande boost prestazionale su CPU con almeno quattro core come ad esempio i programmi di rendering e di compressione video.

Probabilmente in futuro la maggior parte di programmi che richiedono molte risorse di calcolo verranno sviluppati in questo modo e già molti giochi iniziano a sfruttare pienamente i quad core. Al giorno d'oggi ragionando in ottica preventiva, probabilmente vale la pena di acquistare almeno un quad core nativo, per lo meno per chi gioca o utilizza anche di tanto in tanto applicazioni piuttosto esose in termini di elaborazione.



Core fisici e core logici

Per ogni core fisico nella CPUCPU il sistema operativo vede un core logico a cui assegnare dei processi da eseguire (i core logici sono visibili dal task manager di windows). Intel ha sviluppato una tecnologia in grado di far riconoscere al sistema operativo due core logici per ogni core fisico. Questa tecnologia dovrebbe permettere di sfruttare meglio ciascun core fisico tenendolo occupato in percentuale maggiore e quindi ottimizzandone le prestazioni. La tecnologia è stata introdotta nei Pentium4 con il nome di HyperThreading, in seguito abbandonata nell'architettura core 2 e infine ripristinata nell'architettura core i7 e core i5. L'HT è noto anche con il nome di Simultaneous Multi-Threading (SMT). Avere due core logici per ogni core fisico non significa ovviamente avere un raddoppio di prestazioni gratuito.

Questa tecnologia consente soltanto di massimizzare l'efficienza della CPU sfruttando tutte le risorse a disposizione. Il guadagno prestazionale è ovviamente nullo in tutte le applicazioni che non sfruttano il multi-threading e può arrivare ad un massimo del 20-25% su applicazioni multithread.



Frequenza della cpu

Inizialmente è stato uno dei parametri di maggiore interesse sia dei produttori che dagli acquirenti di CPUCPU. Una frequenza di funzionamento maggiore è sicuramente sinonimo di maggiori prestazioni, poiché possono essere eseguite più istruzioni a parità di tempo. In realtà questa comparazione può essere fatta solo tra CPUCPU con una architettura identica. Tra due diverse architetture infatti a parità di prestazioni si ha un divario prestazionale anche del 100% o del 200%. Basti pensare all'architettura Netburst degli intel Pentium 4 o Pentium D e all'architettura core 2 o core i7, in cui la frequenza è rimasta sostanzialmente invariata o diminuita ma le prestazioni sono pressoché raddoppiate. Non ci dilungheremo nei dettagli dell'architettura della CPUCPU poiché davvero troppo complessa e articolata, basterà ricordare che la differenza può essere sostanziale.

Si quindi consiglia una CPUCPU con frequenza di funzionamento di almeno 3 Ghz, ricordando sempre  che la grande differenza la fa l'architettura e il numero di core.

Sempre in merito alla frequenza occorre citare l'esistenza del TurboBoost, una funzionalità che permette di aumentare dinamicamente la frequenza operativa dei core in base alle frequenze di esercizio. Tale funzionalità è presente in quasi tutte le CPUCPU.



Cache

La cache è la memoria integrata nella CPU che i core sfruttano per i loro calcoli. Ci sono diversi tipi di cache. La cache L1 è specifica di ciascun core ed è di solito divisa in cache per istruzioni e cache per i dati. La cache L1 è molto piccola e serve soltanto a caricare le operazioni strettamente necessarie per i calcoli nei prossimi istanti. La cache L2 e la cache L3 sono invece più grandi (dell'ordine dei MB o delle centinaia di kB). Lo scopo principale della cache è quello di caricare le istruzioni e i dati che saranno utilizzati di lì a breve funzionando da buffer tra la memoria RAM e la CPU. Tanto più la memoria RAM è lenta, tanto più è importante la cache in quanto consente di velocizzare (o meglio di minimizzare) le operazioni di lettura e scrittura in memoria.

Senza scendere nei dettagli si può dire che un maggior quantitativo di cache L2 o L3 (qualora presente) assicura prestazioni maggiori, ma a volte il beneficio può non essere tale da giustificare un prezzo di acquisto maggiore.In linea di massima comunque il beneficio è abbastanza evidente ed è una delle poche cose che va a distinguere due CPU di pari frequenza e architettura. Spesso sono importanti anche le latenze di accesso alla cache, in termini di cicli di clock, caratteristica peculiare di ciascuna architettura.



Consumi, processo produttivo e stepping

Per chi tiene acceso il computer per molte ore al giorno, inizia a diventare importante badare ai consumi. Solitamente le CPU più nuove consentono un rapporto prestazioni/consumi superiore rispetto alle CPU più vecchie. In generale quindi si deve andare a vedere il processo produttivo, attualmente di 32 nm sia per intel che AMD. A un processo produttivo inferiore corrisponde una dimensione minore dei transistor all'interno della CPU e quindi minori dissipazione di corrente. Ciò porta a minori consumi, minore calore dissipato e maggiori margini di overclock. Due processori con stessa sigla possono differire per stepping. Similmente a quanto visto accade con il processo produttivo un nuovo step porta a ridurre la corrente dissipata grazie all'impiego di materiali migliori e al raffinamento del processo di produzione dei chip. Purtroppo lo step di un processore è difficile da individuare al momento dell'acquisto se non esplicitamente specificato dal venditore. Un modo per identificare lo step è analizzare la matricola sulla scatola della CPU.

Sembrerà una banalità ma ovviamente un dual core consuma molto meno di un quad core e chi deve tenere il computer acceso molte ore al giorno senza avere bisogno di fare grossi calcoli, dovrebbe indirizzarsi verso una intel i3 di fascia bassa tipo come i3 2100 o uno dei nuovi AMD Llano.

Facciamo notare comunque come sia AMD che Intel siano attenti ai consumi della CPU sviluppando tecnologie in grado di contenere i consumi in idle: rispettivamente Cool n'quiet e SpeedStep. Entrambe tentano di ridurre la frequenza di funzionamento, abbassando il moltiplicatore e riducono la tensione operativa della CPU.


Overclockabilità

L'overclock è una pratica che consente di aumentare la frequenza di funzionamento della CPU (ma in generale vale per qualsiasi componente avente un “clock”), permettendo di incrementarne consistentemente le prestazioni. A volte l'aumento di frequenza è così consistente da poter raggiungere livelli prestazionali irraggiungibili da qualsiasi altra CPU a default. A volte questo può accadere anche con CPU non particolarmente costose, per cui si può considerare l'overclock anche come una forma di risparmio. Occorre premettere che per overcloccare la CPU occorre anche che anche gli altri componenti (quali RAM, scheda madre ed alimentatore,dissipatore) siano adatti all'overclock.

Detto questo l'overcloccabilità varia notevolmente da un modello all'altro e, a parità di modello, anche da un esemplare all'altro. Non è facile dare regole generalmente valide per l'overclock.

Solitamente comunque un moltiplicatore alto della CPU permette di salire più facilmente in frequenza.

Spesso anche un processo produttivo o uno step più recente sono sinonimo di migliori capacità di overclock. In tutti i casi, se avete intenzione di fare overclock, è bene valutare prima i risultati ottenuti da altri utenti, facendo ricerche nei forum, su google, o sul database di overclock www.hwbot.org in modo da valutare se vale la pena acquistarla o è meglio passare a un'altra CPU/piattaforma.