Modulare il funzionamento di una CPU: differenze tra le versioni

m
Nessun oggetto della modifica
 
(3 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
{{Versioni compatibili|Squeeze|Wheezy|Sid}}
{{Versioni compatibili|Jessie|Stretch|Buster}}
== Introduzione ==
== Introduzione ==
Ormai da anni esiste la possibilità di regolare il funzionamento della CPU di una macchina per meglio rispondere alle esigenze dell'utente, ma mentre inizialmente era necessario ricorrere a programmi appositi, con le ultime versione del kernel (>= 2.6.12) di Linux questa necessità è venuta meno.<br/>
Ormai da anni esiste la possibilità di regolare il funzionamento della CPU di una macchina per meglio rispondere alle esigenze dell'utente, ma mentre inizialmente era necessario ricorrere a programmi appositi, con le ultime versione del kernel (>= 2.6.12) di Linux questa necessità è venuta meno.<br/>
Di più, la modulazione della CPU è divenuta la condizione standard, tanto da essere abilitata automaticamente all'avvio del computer grazie all'utilizzo del pacchetto <code>cpufrequtils</code>, di norma già installato durante l'installazione del sistema operativo.<br/>
Di più, la modulazione della CPU è divenuta la condizione standard, tanto da essere abilitata automaticamente all'avvio del computer grazie ai moduli cpufreq del kernel, e modificabile dai file system sysfs e procfs del kernel.
Si noti che tale pacchetto permette di regolare la frequenza della CPU attraverso entrambe le interfacce CPUFreq, sysfs e procfs, del kernel.
 
== Applet GNOME ==
 
Nel caso di GNOME il metodo più semplice per variare la modalità di funzionamento della CPU è aggiungere al pannello l'applet ''Variazione Frequenza CPU''. Fatto ciò comparirà un icona raffigurante un chip e una barra colorata indicante l'attuale frequenza di funzionamento della CPU come frazione della frequenza massima ammissibile.<br/>
Cliccando col tasto sinistro sulla suddetta icona verrà mostrato sia l'elenco delle frequenze che delle modalità di funzionamento permesse; basta cliccare quindi sul valore desiderato, immettere la password di amministratore quando richiesto, e i suddetti parametri verranno modificati.<br/>
Si noti che:
# ogni applet gestisce un core e di default viene gestito il primo core (cpu0), è quindi necessario aggiungere tante applet quanti sono i propri core e cliccando col tasto destro su ciascuna di esse selezionare un differente core;
# le variazioni sono temporanee e pertanto andranno perse al successivo avvio del sistema. Per introdurre modifiche permanenti si veda l'apposita sezione.


== Terminale ==
== Terminale ==
È possibile determinare l'attuale frequenza della CPU in due modi, in primis digitando:
È possibile determinare l'attuale frequenza della CPU in due modi, in primis digitando:
<pre>$ cat /proc/cpuinfo</pre>
<pre>$ cat /proc/cpuinfo</pre>
Riga 22: Riga 11:
Per conoscere le frequenze di funzionamento ammissibili (espresse in [kHz]):
Per conoscere le frequenze di funzionamento ammissibili (espresse in [kHz]):
<pre>$ cat /sys/devices/system/cpu/*/cpufreq/scaling_available_frequencies </pre>
<pre>$ cat /sys/devices/system/cpu/*/cpufreq/scaling_available_frequencies </pre>
Conoscendo tali valori è possibile impostare coerentemente i valori massimo e minimo con i seguenti comandi:
Conoscendo tali valori, è possibile impostare coerentemente i valori massimo e minimo con i seguenti comandi (con [[privilegi di amministrazione]]):
<pre>
<pre>
# echo valore > /sys/devices/system/cpu/*/cpufreq/scaling_max_freq
# echo valore > /sys/devices/system/cpu/*/cpufreq/scaling_max_freq
Riga 68: Riga 57:


== Rendere permanenti le modifiche ==
== Rendere permanenti le modifiche ==
È sufficiente installare il pacchetto <code>cpufrequtils</code>. Creerà lo script d'avvio <code>/etc/init.d/cpufrequtils</code>, e renderà disponbibili anche i comandi <code>cpufreq-info</code> e <code>cpufreq-set</code>, senza più bisogno di leggere i valori dai filesystem in <code>/proc</code> and <code>/sys</code>.
Se ci si limita a cambiare la modalità di funzionamento, per esempio da ''Ondemand'' a ''Conservative'' nel caso dei portatili, è sufficiente creare o modificare il file <code>/etc/default/cpufrequtils</code>, per esempio con [[nano]]:
<pre># nano /etc/default/cpufrequtils</pre>
e scrivere (o cambiarla, se già presente) la riga <code>GOVERNOR="conservative"</code>. È anche possibile cambiare i valori delle frequenze massima e minima, purché permesso dalla modalità scelta, attraverso le variabili <code>MAX_SPEED</code> e <code>MIN_SPEED</code>.


Se ci si limita a cambiare la modalità di funzionamento, per esempio da ''Ondemand'' a ''Conservative'' nel caso dei portatili, è sufficiente editare il file <code>/etc/init.d/cpufrequtils</code>
<pre># nano /etc/init.d/cpufrequtils</pre>
e cercare la variabile <code>GOVERNOR="ondemand"</code> cambiandola in <code>GOVERNOR="conservative"</code>. È anche possibile cambiare i valori delle frequenze massima e minima, purché permesso dalla modalità scelta, attraverso le variabili <code>MAX_SPEED</code> e <code>MIN_SPEED</code> .<br/>
Qualora si intendesse modificare altri parametri sarebbe necessario ricorrere ad altre strade, come ad esempio editare il file <code>/etc/rc.local</code> o installare le <code>sysfsutils</code>.
Qualora si intendesse modificare altri parametri sarebbe necessario ricorrere ad altre strade, come ad esempio editare il file <code>/etc/rc.local</code> o installare le <code>sysfsutils</code>.
== Regolazione dinamica ==
È possibile modificare il livello in modo dinamico installando il pacchetto <code>cpufreqd</code>, in base al verificarsi di diverse condizioni, anziché avere sempre la stessa modalità, modificabile solo manualmente. Per maggiori informazioni si rimanda a [[Cpufreqd:_Un_demone_per_il_CPU_frequency_scaling|questa guida]].


== Approfondimenti ==
== Approfondimenti ==
<code>$ man cpufreq-info</code><br/>
<code>$ man cpufreq-set</code>


=== Sitografia ===
=== Sitografia ===
[http://www.pantz.org/software/cpufreq/usingcpufreqonlinux.html CPUFreq on Linux]
[http://www.pantz.org/software/cpufreq/usingcpufreqonlinux.html CPUFreq on Linux]


{{Autori
{{Autori
|Autore = [[Utente:Wtf|Wtf]] 15:18, 24 ago 2011 (CEST)
|Autore = [[Utente:Wtf|Wtf]] 15:18, 24 ago 2011 (CEST)
|Numero_revisori = 0
|Estesa_da =
|Verificata_da =
:[[Utente:HAL 9000|HAL 9000]] 09:30, 28 lug 2019 (CEST)
|Numero_revisori = 1
}}
}}


[[Categoria:Ottimizzazione del sistema]]
[[Categoria:Ottimizzazione del sistema]]
[[Categoria:Computer portatili]]
[[Categoria:Computer portatili]]
3 581

contributi