Ho un server che, a partire dall'aggiornamento a 10.04, ora esegue il demone di ridimensionamento della CPU "ondemand". Perché dovrebbe installarlo automaticamente? Non voglio che il mio server risparmi energia a spese delle prestazioni.
Ho un server che, a partire dall'aggiornamento a 10.04, ora esegue il demone di ridimensionamento della CPU "ondemand". Perché dovrebbe installarlo automaticamente? Non voglio che il mio server risparmi energia a spese delle prestazioni.
Risposte:
Invece di disabilitare l'esecuzione dello /etc/init.d/ondemand
script (come suggerito da George) dovresti usare questo comando
sudo update-rc.d ondemand disable
Per fare in modo che il sistema init non avvii lo script, questo è il modo riconosciuto di farlo! La disabilitazione dell'autorizzazione exec ( sudo chmod -x /etc/init.d/ondemand
) potrebbe essere sovrascritta se il pacchetto viene aggiornato.
Il ridimensionamento di frequenza non è statico. Non appena c'è lavoro da fare, la CPU entra in azione, gli stati P aumentano e tutto vola.
È abilitato perché è ampiamente visto come una buona cosa. Risparmia energia (ottimo per il portafoglio e l'ambiente). Mantiene il calore ( così importante in una sala server). Ed è piuttosto impercettibile.
Inoltre, sui moderni chip Intel, se hai il ridimensionamento puoi usare "turbo boost" dove un core funzionerà a velocità superiori a quelle di serie per un certo periodo. Questo è molto utile per picchi di lavoro a thread singolo. Senza il ridimensionamento abilitato, non si ottiene questo.
È possibile installare lo strumento debian rcconf :
sudo apt-get install rcconf
quindi disabilitare il servizio "ondemand" da lì.
Impostare tutte le CPU su Performance Governor:
for GOVERNOR in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor; \
do \
echo "performance" | sudo tee $GOVERNOR; \
done
Tutti i governatori supportati dal kernel Linux:
Vedi https://www.kernel.org/doc/Documentation/cpu-freq/governors.txt
sudo echo > ...
non fare quello che ti aspetti: askubuntu.com/q/230476/158442
Per far funzionare continuamente tutte le CPU alle massime prestazioni su un desktop o un server Ubuntu, eseguire:
sudo chmod -x /etc/init.d/ondemand
al prompt della shell e inserire la password. Questo disabilita lo script della shell che fa funzionare tutte le CPU alla velocità "OnDemand", rendendole predefinite alla massima velocità (Prestazioni). Sarà necessario riavviare affinché questo abbia effetto.
L'ho testato solo in Ubuntu Jaunty 9.04, ma dovrebbe funzionare e non causare problemi su nessuna versione di Ubuntu.
Penso che le impostazioni predefinite di Ubuntu siano strane per questo. Secondo me, un desktop o un server dovrebbero funzionare a tutta velocità.
Saluti, George
ondemand
si sbaglia.
Su alcuni sistemi, il governatore "ondemand" è sfortunatamente rotto.
Questo è il caso di "CPU Q9300 quad-core Intel (R) Core (TM) 2 a 2,50 GHz" e kernel 2.6.32-42.
Il kernel pensa di poter impostare la frequenza individualmente per ciascuna CPU mentre l'hardware in realtà consente di impostare la frequenza solo su gruppi di più CPU (ad esempio CPU 0 e 1 insieme e CPU 2 e 3 insieme).
Potresti scoprire che il kernel non è a conoscenza di questo guardando i file / sys / devices / system / cpu / cpu * / cpufreq / influenzati_cpus che contengono "0", "1", "2", "3" anziché "0 1", "0 1", "2 3", "2 3".
L'effetto visibile di questa mancata corrispondenza è un processo a thread singolo che inizia a funzionare alla massima velocità su una CPU (il regolatore "ondemand" reagisce rapidamente), quindi, dopo circa 20 secondi (dipende dai dettagli di impostazione), perde parte della sua velocità.
Il motivo è che il sistema operativo, con il governatore "ondemand", riapplica periodicamente freq bassi sulle CPU inattive, senza aspettarsi che cambi anche implicitamente il freq della nostra CPU occupata. Non è nemmeno visibile quando guardi / sys / devices / system / cpu / cpu * / cpufreq / * cur_freq o / proc / cpuinfo, il sistema operativo non ne è a conoscenza!
Pertanto, su questi sistemi la soluzione è tornare al semplice regolatore delle "prestazioni".
PS: Nel mio caso, far funzionare le CPU costantemente alla loro massima frequenza non ha cambiato nulla riguardo al rumore della ventola. Suppongo che quando una CPU è inattiva, una frequenza più bassa o più alta non avrà un grande impatto sul suo consumo di energia.
Ho un nuovo processore AMD Athlon II X4 631 (processore Fusion per socket FM1) e non risparmia energia (lo guardavo con un contatore di energia)! Non ho un core turbo, quindi non ho bisogno dell'impostazione ondemand. La maggior parte dei nuovi processori salva enery da sola.
Nel benchmarking, c'è una piccola differenza, nella gamma sull'1-2%, quando si confrontano la domanda e la prestazione.
Questo è vecchio, ma poiché nessuno lo ha menzionato, e per completezza, aggiungerò che l'argomento su come la CPU che gira alla massima velocità sprecherà energia, produrrà calore, rumore della ventola ecc. È SBAGLIATO .
Quasi tutte le CPU moderne, in particolare le CPU desktop / server, entreranno in modalità di sospensione profonda quando inattive (google corre in idle.).
Il ridimensionamento della tensione probabilmente risparmierà più energia, quindi sui laptop questo potrebbe aumentare leggermente il tempo di esecuzione, ma su desktop e server che eseguono il regolatore delle prestazioni andrà bene per la maggior parte degli utenti "normali" (che non eseguono server farm o simili.).
Uso performance gov con il mio i7-2600k e la temperatura della CPU è di solito intorno ai 30 C.