# cpufreq und KDE

## curator

Hi

habe cpufreq installiert und e läut wunderbar. Suche nun nach einem Applet für kicker, um die aktuelle Frequenz einzustellen und sie grafisch angezeigt zu bekommen,

Kcpufreq von http://www.schaffert.eu/projects_html

ist eingentlich sehr net, leider kann man da die frequenz nicht switchen.

Hat da schonmal jemand was gefunden oder selbstgeschrieben?

Danke,

Alex

----------

## ok

Ich hab mein KDE auf englisch:

Control Center->Power Control->Laptop Battery->Battery

[x] Show battery monitor

->ACPI Config

[x] Enable performance profile

R-Click auf KLaptop-Icon im Panel: Performance Profile->...

Zum Anzeigen des Governor und der Frequenz nutz ich Conky.

----------

## monophase

zur Anzeige im Kicker...

kde-misc/kima

----------

## curator

kima kenn ich, das zeigt leider nur an. Das andere versuch im mal in deutsch zu finden..............

----------

## curator

emerge Klaptopdaemon liefert mir genannte funktionalität.

Leider kann ich die ACPI optionen nicht aktivieren, Alle grau hinterlegt.

ACPI Daemon rennt aber............... und acpi liefert auch akkustand etc.

----------

## ok

Power Management, ACPI und Governor sind aber im Kernel eingebaut oder als Modul geladen?

Was ist die Ausgabe von foldenden zwei Befehlen:

```
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors
```

?

(wieder auf englisch)

Control Center->Power Control->Laptop Battery->ACPI Config

[Setup Helper Application]

Bei einem Hinweis auf die falsche Prüfsumme trotzdem laufen lassen...

Dann noch die entsprechenden Häkchen setzen.

----------

## curator

Jetzt gehts, kann die Häckchen aktiviern und hab auch so ne prozent anzeige beim klick aufs symbol. Leider kann ich da einstellen, was ich will, cpufreq-info bleibt dabei, dass die CPU auf 1200Mhz läuft, trotz userspace einstellung

----------

## bbgermany

Hi,

1. Welchen Prozessor hast du denn? 

2. Hast du cpufrequency scaling support im Kernel aktiv? 

3. Hast du den Support als Modul oder fest im Kernel eingebaut? 

4. Lassen sich, wenn die Module geladen sind (sofern es Module sind), die Scalinggovenors einstellen?

Ich habe zum Beispiel ein Contrino Duo. Da muss die speedstep-lib und speedstep-centrino geladen sein, damit überhaupt der Support bereitgestellt wird. Weiterhin ist dann noch der passende Govenor nötig (performance, userspace, ondemand oder conservative).

MfG. Stefan

----------

## ok

Was ist die Ausgabe von

```
cpufreq-info
```

?

----------

## curator

```

cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006

Report errors and bugs to linux@brodo.de, please.

analyzing CPU 0:

  driver: centrino

  CPUs which need to switch frequency at the same time: 0

  hardware limits: 600 MHz - 1.20 GHz

  available frequency steps: 1.20 GHz, 1.10 GHz, 1000 MHz, 900 MHz, 800 MHz, 600 MHz

  available cpufreq governors: performance

  current policy: frequency should be within 600 MHz and 1.20 GHz.

                  The governor "performance" may decide which speed to use

                  within this range.

  current CPU frequency is 1.20 GHz (asserted by call to hardware).

```

Wie gesagt, cpufreq-set -f irgendwas geht, also das Programm an sich läuft.

Aber ich hab jetzt noch ne coolere Idee. Ich hab mit das Programm kcpufreq nochmal runtergeladen und angefangen ein wenig an dem Source Code rumzubasteln, Mit dem Erfolg, dass ich nen zusätzlichen Slider eingebaut habe, mit der man die Frequenz verstellen kann. Zugegeben, system("sudo cpufreq-set -f VALUE") ist nicht die feinste Art, aber es geht  :Smile: 

----------

## ok

 *Quote:*   

> available cpufreq governors: performance 

 

Da fehlen noch welche.

Meine Ausgabe:

```
available cpufreq governors: conservative, ondemand, powersave, userspace, performance
```

Und von  *Quote:*   

> $ gunzip -c /proc/config.gz | grep GOV
> 
> # CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
> 
> CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
> ...

 

Welche Kernel benutzt du?

In der Kernel config müssen die 'governors' entweder als <M> Modul oder fest <*> eingebaut sein: 

```
Power management options (ACPI, APM)  --->

    CPU Frequency scaling  --->

        [*] CPU Frequency scaling  

        [*]   Enable CPUfreq debugging

        <*>   CPU frequency translation statistics

        [ ]     CPU frequency translation statistics details

        Default CPUFreq governor (userspace)  --->

        <*>   'performance' governor

        <*>   'powersave' governor

        ---   'userspace' governor for userspace frequency scalingx  

        <*>   'ondemand' cpufreq policy governor

        <*>   'conservative' cpufreq governor

....
```

Wenn sie als Modul gebaut wurden, müssen sie noch geladen werden.

----------

## curator

/sys/devices/system/cpu/cpu0/cpufreq $ more scaling_governor         -> userspace

sonst könnt ich die ja net per hand ändern.

Userspace und die anderen sind im Kernel als Modul eingebaut.

----------

## ok

 *Quote:*   

> sonst könnt ich die ja net per hand ändern. 

 

net ganz richtig...

scaling_governor ^= aktiver governor

scaling_available_governors ^= benutzbare governor

Sind denn alle mögliche gervornor geladen?

Ausgabe von lsmod? uname -a?

----------

## bbgermany

 *ok wrote:*   

>  *Quote:*   sonst könnt ich die ja net per hand ändern.  
> 
> net ganz richtig...
> 
> scaling_governor ^= aktiver governor
> ...

 

Wenn die govenors fest im Kernel sind wird lsmod nichts anzeigen. Andernfalls, sie sind als Module übersetzt, und lsmod zeig sie auch nicht an, mal folgendes machen:

```

$ echo "cpufreq-ondemand" >> /etc/modules.autoload.d/kernel-2.6

$ echo "cpufreq-conservative" >> /etc/modules.autoload.d/kernel-2.6

$ modprobe cpufreq-conservative 

$ modprobe cpufreq-ondemand

$ cpufreq-selector -c 0 -g ondemand

```

Bei einer DualCore CPU solltest du das ganze noch für CPU 1 machen. Als govenor kannst du dann userspace, performance, ondemand oder conservative nehmen. Je nach dem welche govenor du übersetzt hast.

Das programm cpufreq-selector lässt sich übrigens auch als "dummer" User benutzen  :Smile: 

```

walther@poseidon ~ $ cpufreq-selector -c 0 -g ondemand

walther@poseidon ~ $ cat /proc/cpuinfo | grep MHz

cpu MHz         : 425.000

cpu MHz         : 425.000

walther@poseidon ~ $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

425000 850000 1275000 1700000 2125000 2550000 2975000 3400000

walther@poseidon ~ $

```

Das ist ein P4 550 mit HT und p4-clockmod.

MfG. Stefan

----------

