Cpufreq ondemand usa solo una delle frequenze disponibili

Scrivete su questo forum se avete problemi o volete dare buoni consigli sui computer portatili (Laptop).

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Citare il modello preciso del laptop in questione.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
jena
Linux 1.x
Linux 1.x
Messaggi: 130
Iscritto il: gio 3 gen 2008, 17:02

Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da jena »

Ciao a tutti!!!
Questo è il mio primo post su questo forum...ho iniziato da poco ad utilizzare slackware...
Ho installato slackware 11 su un vecchio portatile e stò cercando di risolvere il problema del cpu scaling...
Ho installato cpufreq e cpufrequtils ho inserito i moduli da caricare all'avvio nel file /etc/rc.d/rc.modules e ho indicato nel file /etc/rc.d/rc.local di far partire all'avvio cpufreqd e il governor ondemand come scelta di default...
Il problema però è che il governor ondemand invece di far oscillare la frequenza tra quelle disponibili utilizza soltanto la più bassa come potete vedere dall'out di cpufreq-info:

Codice: Seleziona tutto

cpufreq-info
analyzing CPU 0:
driver: powernow-k7
CPUs which need to switch frequency at the same time: 0
hardware limits: 498 MHz - 1.1 GHz
available frequency steps: 498 MHz, 598 MHz, 698 MHz, 1.1 GHz
available cpufreq governors: performance, conservative, ondemand, userspace
[color=red]current policy: frequency should be within 498 MHz and 498 MHz.
The governor "ondemand" may decide which speed to use within this range.[/color]
current CPU frequency is 498 MHz (asserted by call to hardware)
Come posso indicare al governor ondemand di utilizzare tutte le frequenze disponibili???
Spero possiate aiutarmi...
Grazie!!!

Avatar utente
whites11
Linux 4.x
Linux 4.x
Messaggi: 1147
Iscritto il: ven 30 set 2005, 13:54
Località: Udine

Messaggio da whites11 »

modifica i valori in
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
e
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq

per settare la frequenza minima e massima.

per le frequenze disponibili vedi

/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

jena
Linux 1.x
Linux 1.x
Messaggi: 130
Iscritto il: gio 3 gen 2008, 17:02

Re:

Messaggio da jena »

whites11 ha scritto:modifica i valori in
/sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq
e
/sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
per settare la frequenza minima e massima.
Ciao e grazie per la tua risposta!!!
Avevo notato che il contenuto dei 2 file era lo stesso e sia nella frequenza massima che nella frequenza minima era presente sempre lo stesso valore 498360 cioè la frequenza sulla quale ondemand ha bloccato la mia cpu...cosi ho provato a modificare scaling_max_freq inserendo 1096392 cioè il valore massimo supportato dalla mia cpu...
Da root ho provato prima cosi:

Codice: Seleziona tutto

echo 1096392 >/sys/devices//system/cpu/cpu0/cpufreq/scaling_max_freq
Ma il valore non cambia infatti se dò:

Codice: Seleziona tutto

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
498360
Il valore non è cambiato...
Da root ho provato anche a modificarlo con l'editor di testo kate,apro il file,sostituiso il valore 498360 con 1096392 e salvo...ma se provo a riaprire il file questo è vuoto...e al riavvio cè di nuovo il valore 498360...
Non capisco perchè non riesco a modificare il contenuto del file...
Spero possiate aiutarmi...
Grazie!!!

Avatar utente
absinthe
Iper Master
Iper Master
Messaggi: 2354
Iscritto il: dom 15 mag 2005, 0:00
Nome Cognome: Matteo Nunziati
Slackware: 12.1 - defunct
Kernel: 2.6.32-5-amd64
Desktop: gnome
Distribuzione: debian squeeze
Località: Prato
Contatta:

Re: Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da absinthe »

posta il contenuto di
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

il file viene generato dinamicamente ad ogni riavvio: se devi rendere effettiva la modifica, devi inserire il tuo echo in /etc/rc.d/rc.local

M

jena
Linux 1.x
Linux 1.x
Messaggi: 130
Iscritto il: gio 3 gen 2008, 17:02

Re: Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da jena »

absinthe ha scritto:posta il contenuto di
/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies
Grazie della tua risposta!!!
Il contenuto del file è:
498340 598008 697676 1096348
absinthe ha scritto:il file viene generato dinamicamente ad ogni riavvio: se devi rendere effettiva la modifica, devi inserire il tuo echo in /etc/rc.d/rc.local
Ho aggiunto questa riga:

Codice: Seleziona tutto

echo 1096381 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
Il contenuto del file è:

Codice: Seleziona tutto

#!/bin/sh
#
# /etc/rc.d/rc.local:  Local system initialization script.
#
# Put any local startup commands in here.  Also, if you have
# anything that needs to be run at shutdown time you can
# make an /etc/rc.d/rc.local_shutdown script and put those
# commands in there.
/usr/sbin/cpufreqd start
echo ondemand > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo 1096381 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
Ho riavviato ma non è cambiato nulla infatti se dò cpufreq-info:

Codice: Seleziona tutto

cpufreq-info
analyzing CPU 0:
driver: powernow-k7
CPUs which need to switch frequency at the same time: 0
hardware limits: 498 MHz - 1.1 GHz
available frequency steps: 498 MHz, 598 MHz, 698 MHz, 1.1 GHz
available cpufreq governors: performance, conservative, ondemand, userspace
[b]current policy: frequency should be within 498 MHz and 498 MHz.[/b]
The governor "ondemand" may decide which speed to use within this range.
current CPU frequency is 498 MHz (asserted by call to hardware)
Alla riga currente policy la frequenza è bloccata a 498 MHZ...
E se dò:

Codice: Seleziona tutto

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq
498360
Il contenuto del file non cambia...
Spero si possa trovare una soluzione...
Grazie!!!

Avatar utente
whites11
Linux 4.x
Linux 4.x
Messaggi: 1147
Iscritto il: ven 30 set 2005, 13:54
Località: Udine

Re: Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da whites11 »

jena ha scritto: Il contenuto del file non cambia...
Spero si possa trovare una soluzione...
Grazie!!!

prova con

Codice: Seleziona tutto

echo -n "frequenza" >/sys/devices/...

jena
Linux 1.x
Linux 1.x
Messaggi: 130
Iscritto il: gio 3 gen 2008, 17:02

Re: Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da jena »

Grazie della risposta!!!
Ho provato ma non cambia...
Cosa posso provare ancora?
Grazie!!!

jena
Linux 1.x
Linux 1.x
Messaggi: 130
Iscritto il: gio 3 gen 2008, 17:02

Re: Cpufreq ondemand usa solo una delle frequenze disponibili

Messaggio da jena »

Il problema era una bug...come descritto qui
http://bugzilla.kernel.org/show_bug.cgi?id=9615

Rispondi