venerdì 25 maggio 2007

Troppi cavalli.

[UPDATE: ho preso un granchio, e anche bello grosso, in effetti settando l'opzione del Power Plan su balanced si ottiene la regolazione automatica del moltiplicatore del clock come da figura a lato (dove in questo caso il moltiplicatore e' a 10) senza bisogno di ricorrere ad utilities di terze parti.

Ho anche verificato che con la CPU in idle il moltiplicatore scende a 6x e il VID scende a 0,950V.

Grazie a Sirus e agli altri per l'info!]


Una delle cose che ancora manca ai sistemi operativi attuali e' la piena e completa integrazione con l'hardware, non nel senso di capacita' di utilizzarlo, ma nel senso di capacita' di utilizzarlo in modo ottimale.

Le CPU vengono sostanzialmente usate a manetta anche quando non servirebbe. Ci sono alcuni parametri configurabili da pannello di controllo, ma sono ben poca cosa, e alla fine tra un settaggio e l'altro le differenze sono minime e comunque non intervengono sui parametri della CPU.

Paul Allen, aveva provato, chiedendo aiuto pure a Linus Torvalds, a portare sul mercato CPU completamente controllabili via software, in modo da ottenere computer in grado di consumare il minimo indispensabile con evidente grande vantaggio in termini di autonomia per i portatili e comunque di basso dispendio energetico in generale. Purtroppo il progetto Transmeta ricorda tanto il cubo nero di Steve Jobs a cavallo tra gli anni '80 e '90: troppo avanti per certi aspetti e troppo limitato da alcuni vincoli della tecnologia del momento.
Speriamo che anche l'idea Transmeta un giorno rinasca cosi' come e' rinato NeXT Step nell'incarnazione OS X.

Per ora per cercare di ottimizzare l'utilizzo della CPU ci si deve appoggiare a utilities terze parti che ne permettono la configurazione in base ad alcuni parametri.

RightMark CPU permette di modificare il clock della CPU agendo sul moltiplicatore del clock di base (il FID che si vede in figura), e permette anche di cambiare la tensione di alimentazione della CPU (il VID).

Di solito queste modifiche si fanno per aumentare le prestazioni della CPU, ma ci sono situazioni nelle quali invece e' piu' sensato voler fare il contrario.

Di default il Core 2 Duo del mio portatile funziona con clock a 2 GHz e tensione di 1,163V, con consumi massimi che sono intorno ai 35 Watt. La potenza di calcolo della CPU e' pero' utilizzata a pieno molto raramente, tant'e' che scegliendo un settaggio che ne riduce il clock alla meta' (1 GHz) non si notano assolutamente differenza apprezzabili, salvo utilizzando applicazioni realmente CPU intensive, una di queste e' Virtual PC che va decisamente meglio con il clock a 2 GHz.

Non aspettatevi di raddoppiare l'autonomia della batteria, perche' la CPU e' solo una delle componenti che assorbono energia, hard disk e monitor hanno altrettanta voce in capitolo, pero' si hanno sicuramente degli incrementi e inoltre si ha un minor intervento delle ventole di raffreddamento (nelle due figure il fatto che 2 GHz la temperatura sia piu' alta e' un fatto del tutto casuale, nel senso che comunque le temperatura massime sarebbero ben oltre i 50 gradi e solo l'intervento delle ventole le riporta sotto quella soglia).

In conclusione sono ancor piu' convinto della scelta fatta a suo tempo quando decisi di prendere la CPU a 2 Ghz invece di spendere qualche centinaio di euro in piu' per le CPU a 2,16 GHz o a 2,33 GHz, che offrono prestazioni di poco superiori solo in rarissimi casi e che pagono comunque dazio alla lentezza del disco e delle altre componenti (BUS e Ram).

5 commenti:

  1. Sono perplesso...
    anche io ho un Core 2 Duo 2,00 GHz (T7200) e a sistema operativo appena installato, sia esso Mac OS X 10.4, Windows Vista o Windows XP ma anche Ubuntu 7.04, la CPU scala in frequenza senza nessunissimo problema senza la necessità di installare programmi come RMClock che utilizzo più che altro per poter diminuire i VID di default associati ai FID.
    Per intenderci se accendo il PC trovo la CPU fissa a 1,00 GHz e la frequenza incrementa in automatico in modo trasparente quando è strattamente necessario.

    Forse però non ho capito il senso del tuo post... in tal caso mi piacerebbe farlo.

    RispondiElimina
  2. Ciao Sirus,
    interessante, col mio Dell la frequenza resta fissa sempre a 2 GHz anche se la CPU e' idle.
    Forse e' questione di BIOS (o EFI se come mi sembra di capire hai un Mac) che abilita o no questa funzionalita'.
    Non avevo letto da nessuna parte dell'adeguamento automatico del clock per i Core 2 Duo, provero' a cercare qualche info in piu'.

    RispondiElimina
  3. Anche sul mio pentiumM Vista effettua lo scaling automatico.
    Per impostare i voltaggi invece consiglio Notebook Hardware Control, che mi piace di più rispetto a RMClock (Ma questa è questione di gusti, sono entrambi ottimi pogrammi)

    RispondiElimina
  4. Ciao Enrico,
    hai capito bene io ho un Mac, in particolare un MacBook ma non sono convinto che lo scaling dipenda da EFI anche perché sul notebook di mio papà che è dotato di un Core 2 Duo 1,66 GHz T5500 lo scaling funziona perfettamente se seleziono il profilo Balanced/Power Saver altrimenti selezionando il profilo Performance lo scaling viene disabilitato e la frequenza massima viene selezionata di default.
    Siamo però sicuro che entrambi stiamo parlando di notebook? Perché nonostante le CPU Core 2 Duo della serie desktop supportino pienamente EIST (tecnologia di scaling) è necessaria impostare da BIOS l'adeguata opzione per effettuare l'operazione.

    RispondiElimina
  5. su XP lo ignoro...
    pero con Suse Linux Enterprise Desktop 10 (KDE) l'impostazione della frequenza dinamica funnziona (scheda madre ASUS, processore amd 64.
    Di default viaggia a metà frequenza, salvo aumentare quando serve

    RispondiElimina