Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

PowerNowd: controllo della Cpu in Linux

Come controllare la frequenza della Cpu Intel o Amd in Linux con PowerNowd: veloce e semplice da usare
Come controllare la frequenza della Cpu Intel o Amd in Linux con PowerNowd: veloce e semplice da usare
Link copiato negli appunti

I moderni processori sono ormai tutti orientati a un risparmio energetico
molto spinto. Questo è dovuto a diversi fattori, principalmente per consumi
energetici (che se ridotti portano a una maggiore durata delle batterie di un
laptop ad esempio) e a problemi di riscaldamento. Da qualche anno i processori
vengono dotati della possibilità di scambiare al volo la velocità di clock e la
tensione del processore, in modo da consumare e riscaldare meno quando non è
necessaria una grande potenza di calcolo.

Il kernel Linux supporta questa feature, presente ad esempio nei processiri
Intel Centrino e Core Duo o AMD Athlon 64 ed esistono diversi demoni che si
occupano appositamente di gestire questa risorsa in base a dei criteri
impostabili dall'utente.

Uno di questi prende il nome di
PowerNowd e sarà
l'oggetto del nostro articolo. PowerNowd ha il vantaggio di essere semplice da
usare e di supportare contemporaneamente le tecnologie di AMD e di Intel. Questo
programma è comunque nato per processori AMD, però è possibile utilizzarlo senza
problemi anche su Intel. Infatti Powernow è proprio il nome della tecnologia di
casa AMD (Power Now!, in seguito evolutasi in Cool&Quiet), mentre sotto Intel
questa prende il nome di SpeedStep (ora Enhanced SpeedStep Tecnology).

Uno dei vantaggi di PowerNowd consiste proprio nella sua
semplicità: alcuni progetti analoghi, adottano il criterio di modificare la
velocità di clock in base ad eventi come una elevata temperatura raggiunta dal
processore, oppure alimentazione tramite batteria o rete elettrica.

Per quanto possa sembrare utile questo tipo di approccio, lo sviluppatore di
questo progetto ritiene poco utile ad esempio la riduzione di clock (con
relativa diminuzione delle prestazioni) in seguito all'utilizzo della batteria:
può darsi che l'utente abbia bisogno comunque di potenza di calcolo, e qualora
fosse intenzionato a risparmiare ad avere la massima durata della batteria in
quel momento può comunque diminuire la potenza di clock "manualmente" lanciando
un comando di PowerNowd. Questa tecnologia di risparmio energetico agisce sulla
CPU, ed è questa che dovrebbe essere al centro dell'attenzione.

È importante, prima di continuare, assicurasi che siano presenti alcuni
pacchetti sul nostro sistema. Per quanto alla fine sia necessario solo
Powernowd, alcuni di essi, come ad esempio acpi e acpid
si rivelano molto utili per la gestione del sistema e molto probabilmente
saranno già presenti sul vostro sistema.

Acpid è il demone che si occupa della gestione energetica
dell'intero sistema, mentre acpi è un software che consente
all'utente di interagire con questo sistema: è possibile ad esempio conoscere la
temperatura del PC lanciando come root acpi -V.

Per quanto riguarda l'installazione, sotto Debian e Ubuntu basterà lanciare
come utente amministratore (dopo il comando "apt-get update" per aggiornare il
database dei pacchetti) il comando:

# apt-get install powernowd acpi acpid

Nella prima parte dell'articolo abbiamo presentato PowerNowd, un potente
strumento per la gestione della frequenza delle Cpu Intel e Amd sotto Linux.
Abbiamo anche visto l'installazione del demone in userspace per la gestione
degli eventi che andranno a modificare il clock e la tensione della CPU. Linux
però è in grado di gestire sia Power Now! sia SpeedStep per mezzo di driver a
livello kernel che devono essere presenti (di solito lo sono nei kernel
precompilati, comunque fateci caso, qualora decidiate di ricompilarlo): il loro
nome è CPUfreq.

In base all'architettura di sistema verrà usato un driver differente a
seconda delle varie implementazioni: ad esempio sul PC dal quale sto scrivendo
con un processore Intel Core Duo a 1,67 GHZ sono caricati i
moduli: speedstep_centrino, cpufreq_userspace, cpufreq_stats, freq_table,
speedstep_centrino,cpufreq_stats, cpufreq_powersave, cpufreq_ondemand,
cpufreq_conservative.

Analogamente per processori AMD verrà caricato il modulo
powernow-k8 (o powernow-k7 o powernow-k6, in base alla CPU), quindi un
lsmod
vi potrà aiutare a capire cosa c'è eventualmente da caricare al
sistema. È bene tener presente che per ogni processore sono utilizzabili solo ed
esclusivamente alcune frequenze ben definite.

È possibile conoscerle dando:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
1667000 1333000 1000000

In questo caso è possibile utilizzare i 1,67 Ghz, o 1,33 Ghz oppure 1 Ghz. Il
demone Powernowd verrà semplicemente avviato e gestirà il sistema in base a
politiche ben definite. Questo programma gestisce quattro modalità:

  • "SINE"
  • "AGGRESSIVE"
  • "PASSIVE"
  • " LEAPS"

Quella utilizzata di default è AGGRESSIVE e consente un
passaggio per gradini, partendo dalla frequenza più alta e scendendo al gradino
successivo qualora l'utilizzo della CPU scenda sotto al 20%, risalendo
eventualmente a quello superiore quando questo supera l'80%.

La prima SINE cambia la frequenza in base a una funzione
sinusoidale, in base al carico del processore, la terza PASSIVE
è identica ad AGGRESSIVE, con la differenza che al posto di partire con la
massima frequenza disponibile viene utilizzata la CPU con la più bassa velocità
di clock possibile per poi eventualmente risalire (e in seguito scendere).
LEAPS invece non ha un passaggio graduale tra le varie
frequenze, ma utilizza esclusivamente la frequenza più alta o quella più bassa,
in base al fatto se la CPU è utilizzata più del 20 % o meno dell'80%.

Powernowd è un demone che viene di solito lanciato in modalità
AGGRESSIVE, quella di default, che è anche quella migliore, per la mia
esperienza. Qualora vogliate comunque cambiarla potete lanciarlo con l'opzione
-m num, dove num indica il numero della modalità.

Poichè Powernowd di solito viene lanciato dagli script di sistema potrà
essere necessario dover metter mano a quelli.
Vi sono diversi strumenti per la modifica e la visualizzazione dello stato della
CPU. Tra questi troviamo applet per GNOME o KDE, strumenti da linea di comando,
plugin di GKRellm, ve ne sono per tutti i gusti.

Esiste comunque sempre la possibilità di non ricorrere a un demone, e di
consultare i file presenti sotto la directory /sys, eventualmente
modificandoli per cambiare la configurazione del sistema, che potrà essere
oggetto di un futuro articolo.


Ti consigliamo anche