PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Dynamiche CPU Frequenz



MNemo
06.04.07, 13:48
Hallo!

Die cpu von meinem schleppi läuft die ganze zeit auf maximum (2GHz).

Was muss ich machen, dass sich die frequenz dynamisch der auslastung anpasst?
Hab schon viel gesucht aber nichts gefunden, das funktioniert.


Debian Etch 4.0
CPU: Intel Core 2 Duo CPU T7200
Kernel 2.6.18-4-amd64
Ausschnitt aus config:

...
#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=m
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=m
# CONFIG_CPU_FREQ_STAT_DETAILS is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=m
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m

#
# CPUFreq processor drivers
#
CONFIG_X86_POWERNOW_K8=m
CONFIG_X86_POWERNOW_K8_ACPI=y
CONFIG_X86_SPEEDSTEP_CENTRINO=m
CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
CONFIG_X86_ACPI_CPUFREQ=m

#
# shared options
#
# CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set
# CONFIG_X86_SPEEDSTEP_LIB is not set
...

Ist es sehr schlimm, dass GOV_USERSPACE kein defoult ist?

/proc/cpuinfo:

processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz
stepping : 6
cpu MHz : 2000.216
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 0
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm
bogomips : 4003.59
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:

processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz
stepping : 6
cpu MHz : 2000.216
cache size : 4096 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm
bogomips : 4000.76
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:


/sys/devices/system/cpu/cpuX/
enthält keine verzeichnis mit dem namen 'cpufreq'

----
Danke im voraus
MNemo

ottix
06.04.07, 15:16
Kernel 2.6.18-4-amd64 kann schon mal nicht gehen....
instalier dir einem standart smp kernel

MNemo
06.04.07, 18:35
instalier dir einem standart smp kernel:o Das hat mich jezt schon überfordert

ich hab ma das paket 'linux-image-2.6-em64t-p4-smp' installiert (das das kein amd64 sondern em64t ist ist mir erst später aufgefallen)
naja.. ich hab aufjeden fall dann gemerkt das uname schon smp ausgibt (mit und ohne dem paket)
uname -a

Linux laptop 2.6.18-4-amd64 #1 SMP Mon Mar 26 11:36:53 CEST 2007 x86_64 GNU/Linux

muss ich jezt noch sowas wie 'linux-image-2.6-amd64-k8-smp' installieren oder lieg ich mit den beiden paketen komplett falsch?

.matthias
06.04.07, 19:29
muss ich jezt noch sowas wie 'linux-image-2.6-amd64-k8-smp' installieren oder lieg ich mit den beiden paketen komplett falsch?

Was willst du ueberhaupt mit einem Kernel fuer amd64?
Das em64t-Paket sollte schonmal richtiger sein, solltest dann aber auch den neuen booten. Welchen bootloader benutzt du denn?

MNemo
06.04.07, 19:46
Was willst du ueberhaupt mit einem Kernel fuer amd64?
Das em64t-Paket sollte schonmal richtiger sein, solltest dann aber auch den neuen booten. Welchen bootloader benutzt du denn?
Ich benutze Grub.
Aber das paket hat nicht wirklich ein kernel installiert.(in /boot war zumindest kein neues kernel) es würde das aktuelle kernl vieleicht nur modifizieren
Und das AMD64 kernel hab ich weil das ja nicht nur für amd sondern auch für intel ist und ich gelesen hab das em64t nur was mit 64tb virtuellem ram zu tun hat und ich eh nur 2GB haben kann.

fuffy
06.04.07, 19:52
Hi!

Du solltest ein Programm verwenden, das den Takt dynamisch anpasst (wie cpufreqd) oder beim Booten den Governor auf ondemand umstellen. Im letzteren Fall kümmert sich der Kernel selbst darum.

Gruß
fuffy

MNemo
07.04.07, 13:37
cpufreqd funktioniert nicht: beim booten kommt "cpu frequenz daemon: cpufreqd faild!"
(find leider keine logdatei in der was darüber drin steht)

und was für ein programm stellt mir den governor auf ondemand um?

fuffy
07.04.07, 14:29
Hi!


und was für ein programm stellt mir den governor auf ondemand um?

echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

Da die Datei bei dir noch nicht existiert, musst du vorher noch die für dein Mainboard passenden Module mit modprobe laden, bei mir ist es das Modul speedstep_centrino.

Gruß
fuffy

MNemo
07.04.07, 16:20
Danke :)

Hab jezt ma das modul speedstep_centrino geladen und auf ondemand umgestellt und es geht.

jezt muss ich das nur noch hingriegen, das das beim booten gemacht wird.

[edit]
jezt liegt die maximalfrequenz nur noch bei 1,992GHz kann das daran liegen das speedstep_centrino nicht das optimale modul ist? wen ja, wie find ich das passenden module für mein mainboard