Discussione: TEMPERATURA CORE 2 DUO
View Single Post
Old 18-01-2007, 15:29   #1
M@verick
Senior Member
 
Iscritto dal: Apr 2004
Messaggi: 2798
TEMPERATURA CORE 2 DUO

Facciamo un piccolo "riassunto" degli aspetti di temperatura nei Core 2 Duo.

La temperatura di un processore può sostanzialmente essere presa in due punti:
1) Al centro della parte superiore del processore (che Intel chiama IHS - Integrated Heat Spreader).
2) Dentro il processore, nei "core", ovvero la parte più calda della cpu.

Prima dell'avvento dei Core 2 Duo eravamo abituati a guardare la temperatura da BIOS, e a considerare perciò la temperatura (più o meno bene approssimata) del primo tipo, ovvero quella presa nella parte esterna della cpu. La precisione di questa temperatura spesso era piuttosto bassa, e una rapida verifica con un termometro mostrava spesso differenze notevoli... e in parecchie schede madri per Core 2 Duo il problema rimane: la taratura del sensore, essendo analogico, è tutt'ora poco affidabile.
Il secondo metodo, quello di prendere la temperatura dentro alla cpu, cambia drasticamente le cose: il sensore che viene utilizzato è di tipo digitale (DTS: Digital Thermal Sensor). Non viene più letto tramite la scheda madre, ma tramite programmi appositi che vanno a leggere questi sensori (normalmente uno per ogni core, quindi in un Dual Core si hanno due sensori).

Intel, malgrado abbia implementato questi sensori di nuova generazione in tutti i Core 2 Duo, usa in parte anche il primo metodo per dichiarare le specifiche di funzionamento: perciò la temperatura che Intel dice "sicura per un utilizzo a lungo termine" per i Core 2 Duo è riferita a quella esterna, presa al centro dell'IHS, ed è di 61.4°C per i core con 2Mb di cache di secondo livello (L2), cioe' E6300 ed E6400, e 60.1°C per i core con 4Mb L2 (E6700, X6800), mentre invece per i Core 2 Quad è stata dichiarata di 65°C.

A questo punto viene da chiedersi: come si possono "rapportare" tra di loro queste due temperature?
Beh, è piuttosto difficile stabilirlo con precisione: a seconda della frequenza di utilizzo, del voltaggio applicato al processore, al mezzo di raffreddamento, al carico di lavoro del processore e, non ultimo, dalla "bontà costruttiva" del processore stesso, si hanno differenze sostanziali.
Possiamo dire, in termini del tutto indicativi, che la differenza può tranquillamente essere di una decina di gradi.

Intel, per evitare che il processore possa danneggiarsi per l'alta temperatura, ha implementato dentro i Core 2 Duo due tecnologie "di difesa":
1) Il Thermal Throttling
2) Lo spegnimento del processore
Il Thermal Throttling (presente in molti bios come "TM2", in quanto alla seconda versione) è una tecnologia che serve per far "saltare" dei cicli di clock al processore per ridurne la temperatura. In pratica se il processore sta andando, per fare un esempio, a 2400Mhz e interviene questo primo "limitatore" il core in questione inizia ad andare a 1200Mhz per permettere al processore di raffreddarsi, o perlomeno scaldarsi di meno. Questa operazione è indipendente per ogni core, anche se tendenzialmente il riscaldamento è abbastanza omogeneo tra i core.
Arrivare alla temperatura che fa iniziare il Thermal Throttling è perciò sconsigliato, primo perchè il processore è gia' sotto "sforzo" termico, il che può ridurre la sua vita, secondo perchè rallenta in maniera significativa (normalmente del 25% o del 50%). Quando poi il processore si raffredda (normalmente perchè lo si fa lavorare di meno), e la temperatura torna sotto alla soglia limite, semplicemente il processore torna a lavorare normalmente.
Nel caso il Throttling non bastasse, e il processore continuasse a scaldarsi, interviene il secondo "limitatore", molto più semplice: il processore si spenge.
C'è molta confusione su quale sia la temperatura al quale compare il Throttling nei Core 2 Duo, personalmente ho verificato il Throttling intorno agli 80°C dentro ai core con un buon dissipatore, mentre mi è capitato di vederlo anche ai 72°C con un dissipatore peggiore... suppongo perciò che il punto d'inizio del Throttling sia dato dalla temperatura esterna alla processore, e suppongo sia di 60-65°C. Intorno ai 100°C sui core invece c'è lo shutdown del processore.

Dicevo prima che ci sono alcuni programmi per la lettura del DTS, ecco principalmente quali sono:
* Intel TAT (Thermal Analisys Tool) - http://www.techpowerup.com/downloads/392
* Core Temp - http://www.xtremesystems.org/forums/...d.php?t=103638
* Everest (dalla versione 3.5) - http://www.lavalys.com/
* RMClock (dalla versione 2.2) - http://cpu.rightmark.org/products/rmclock.shtml
Tutti questi programmi leggono i DTS, e perciò, salvo anomalie o piccole differenze (1°C) dovrebbero dare lo stesso valore di temperatura, e hanno un ottimo grado di affidabilità.
Core Temp dichiara di "85°C" la temperatura di Throttling, ma vi posso assicurare che non sempre è vero che sia così.

A questo punto la domanda da porsi è: "Da cosa dipende la temperatura nei Core 2 Duo?"
Come in qualsiasi processore la temperatura dipende dall'equilibrio termico raggiunto tra la temperatura ambiente, il calore dissipatore dal processore e il dissipatore che si sta usando.
La temperatura ambiente poniamola sui 20°C in media... aspettatevi comunque un aumento di temperatura sul processore all'aumentare della temperatura ambiente (non proprio di 2°C sulla cpu ogni 2°C ambiente, ma diciamo che possa essere cosi' approssimato).
Il dissipatore normalmente ha un'indicazione di quanti °C/W riesce a dissipare.
Questo valore implica quanto riesce bene a dissipare il calore: un dissipatore da pc normalmente ha 0.1-0.2°C/W come valore (che poi varia in base alla velocita' della ventola che gli viene applicata)... più è basso meglio riuscirà a dissipare calore dalla cpu.
Il calore dissipato dipende sostanzialmente da due fattori:
1) frequenza di funzionamento
2) voltaggio applicato
e, in maniera semplificata, si puo' vedere come il quadrato del voltaggio per la frequenza (V^2*Mhz): questo fa capire subito come il voltaggio influenzi la temperatura molto di più di quanto possa fare la frequenza.
Intel dichiara, in maniera molto generica, 65W come TDP (Thermal Design Power) per tutti i Core 2 Duo, salvo che per l'X6800, di cui dichiara 75W.
Questo è il valore massimo a cui può, secondo Intel, arrivare quel processore, ed è perciò raggiungibile solo facendo lavorare a pieno carico la cpu.
Intel a ogni Core 2 Duo che esce di fabbrica attribuisce un VID (identificativo del voltaggio di funzionamento, in digitale) di "default", che può essere compreso tra 1.165V e 1.325V. Questo vuol dire che esistono E6600 con una tensione di alimentazione di fabbrica di 1.225V e altri con 1.325V... il che significa (oltre al fatto che i 65W dichiarati sono puramente indicativi) che, senza overclock, questi processori possono avere temperature molto diverse tra di loro.
Quando poi si va in overclock le cose cambiano drasticamente... ad esempio se prendiamo per buono il valore di 65W per un E6400 con VID di fabbrica a 1.325V e lo overclocchiamo a 3.2Ghz con 1.35V abbiamo un TDP calcolato di oltre 100W! Questo significherà che a riposo (idle) il processore sarà piu' caldo di poco (a riposo il processore viene sfruttato pochissimo), ma a pieno carico le temperature saliranno in maniera sensibile.

Per limitare la temperatura del processore a riposo Intel ha sviluppato diverse tecnologie, tra cui, nei Core 2 Duo:
1) Speedstep
2) C1E
Lo Speedstep permette di passare da un programma fatto apposta (es: RMClock) istruzioni al processore perchè modifichi due impostazioni: il VID (voltaggio d'alimentazione) e il FID (moltiplicatore, cioe' quante volte la frequenza del bus FSB viene moltiplicata per dare la frequenza del processore). Questo vuol dire che un E6600, che ha moltiplicatore massimo 9 (266Mhz di FSB x 9 = 2400Mhz, e VID di fabbrica ad esempio 1.325V) possa passare a FID 6 (6 è il minor moltiplicatore per tutti i Core 2 Duo, escluso l'X6800) e VID 1.165V.... ovvero 1.165V per 1600Mhz. Il problema viene fuori in overclock, dove spesso la scheda madre inibisce queste istruzioni, o perlomeno quelle relative al VID: si riesce perciò a scendere di frequenza a riposo, ma non di voltaggio, con vantaggi modesti sulla temperatura.
Il C1E è una tecnologia simile allo Speedstep, che col processore a riposo lo mette in uno stato di minimo consumo, normalmente di 1.05v e 1.6Ghz. Anche questo però è sconsigliato, e spesso comunque impossibile da utilizzare, su sistemi overcloccati.

Come fare a vedere che temperatura massima viene raggiunta sotto carico da un processore? Basta usare il programma TAT, nominato già prima, nella sua funzione "Workload 100%", oppure, anche se è piu' "leggero" come carico, il programma Orthos ( http://sp2004.fre3.com/beta/beta2.htm ) nella modalità "small FFT", che serve proprio a testare la stabilità della cpu a pieno carico.

Dopo tutto questo vi verrà da chiedervi: "ma quale è una temperatura normale per un Core 2 Duo"?
La risposta, come ho già detto prima, dipende da molti fattori... ma posso affermare tranquillamente che la maggior parte dei Core 2 Duo venduti dalle varie aziende per l'utente medio (nessun dissipatore particolare, niente overclock, nessun case iperventilato) gira, sui core, con temperature sui 40-45°C in idle, per arrivare a ben oltre i 55°C a pieno carico.
__________________
My PC: Nox Cube - Intel X3360@3.4Ghz@1.175v VID - Asus Maximus II Gene P45@400Mhz@1.1v - 2 * OCZ Blade PC2-8500 2Gb@5-5-5-18@1066Mhz@1.8v - Gainward GTX260 GS ...work in progress!

Ultima modifica di M@verick : 12-08-2007 alle 13:53.
M@verick è offline