Last night I noticed during heavy load my CPU didn't scale up anymore (it runs on 800 Mhz by default and clocks to 1.8 Ghz when needed). It was a tar compression (piped to bzip2) of a few hundred MB, so i had a while to verify whether this was really happening . Conky just showed the CPU keeping on 800 Mhz, not clocking up. Not even after sustained 100% usage.
So... Since it ran perfect before, I wonder what caused this. I run current, I checked /etc/conf.d/cpufreq, it still contains what I set (the CPU is a Turion, which clocks from 800 Mhz to 1.8 Ghz with an intermediate 'stop' at 1.6 Ghz):
[stijn@hephaistos ~]$ cat /etc/conf.d/cpufreq #configuration for cpufreq control # valid governors: # ondemand, performance, powersave, # conservative, userspace governor="ondemand" # valid suffixes: Hz, kHz (default), MHz, GHz, THz min_freq="800MHz" max_freq="1800MHz"
As you can see my max & min frequencies are set. Now this is what I get when i query cpufreq:
[stijn@hephaistos ~]$ cpufreq-info cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to email@example.com, please. analyzing CPU 0: driver: powernow-k8 CPUs which need to switch frequency at the same time: 0 hardware limits: 800 MHz - 1.80 GHz available frequency steps: 1.80 GHz, 1.60 GHz, 800 MHz available cpufreq governors: ondemand, performance current policy: frequency should be within 800 MHz and 1.44 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 800 MHz.
Before (I rebooted to make sure this problem persisted) the frequency range showed 800 Mhz and 800 Mhz (instead of the 1.44 Ghz it's showing now - I don't even get where the hell it gets that last frequency from). Nevertheless, those values are utterly incorrect - and despite of the governor being the 'ondemand' one, my CPU doesn't clock higher under significant load.
Did someone experience similar problems? I am running the 188.8.131.52 ck kernel.
Any help is appreciated
Last edited by B (2007-04-23 23:29:42)
I'm getting the same problem!
I have modprobed everything correctly and I've checked around for every tutorial on setting this up, and nothing has worked. Oddly enough, I copied my config files etc directly from my old install of Arch ( I recently had to reformat ) but I cannot get things working.
I've set this up on numerous computers, so I don't feel like I've forgotten anything, and googling seems to turn up the possibility of a bug in the 2.6.20 kernel?
Anyone else experience anything similar?
PS. I have a 1.6ghz turion and it's stuck at 800mhz aside from a few brief seconds at startup.
Did you update to the latest kernel26 and initscripts (and reboot after the update)? Acpi support were modularized, now processor is again in the kernel and the acpi modules are anyway loaded automatically by the latest initscripts. Acpi support is required by most cpufreq implementations, e.g. the speedstep system for intel centrino.
If you do not want to update and reboot, simply load the modules.
Last edited by patroclo7 (2007-04-24 14:38:33)
Mortuus in anima, curam gero cutis
I believe I have everything properly loaded, even with the recent changes.
Even without cpufreq running, my processor seems to lock itself down to 800MHz rather than the 1.6GHz it should be at. When I have turned cpufreq on, I notice no difference. It seems that my processor physical limits are seen as fine, but it doesnt seem that the scaling sees the proper selections ie: it says my processor scales form 800mhz to 1.6ghz but only says that my valid range is between 800mhz and 800mhz. Here's some possibly useful information"
[will@Ghost32 ~]$ lsmod Module Size Used by powernow_k8 13204 0 ipv6 252864 10 eth1394 16772 0 joydev 8384 0 sdhci 15884 0 mmc_core 21380 1 sdhci tifm_7xx1 6144 0 tifm_core 6784 1 tifm_7xx1 rtc 10416 0 usbhid 34592 0 hid 25088 1 usbhid ff_memless 5256 1 usbhid pcmcia 31404 0 serio_raw 5636 0 psmouse 35336 0 ohci1394 31920 0 sg 26652 0 yenta_socket 23564 1 rsrc_nonstatic 11264 1 yenta_socket pcmcia_core 33176 3 pcmcia,yenta_socket,rsrc_nonstatic i2c_piix4 7692 0 ieee1394 84056 2 eth1394,ohci1394 snd_atiixp_modem 12296 0 i2c_core 17792 1 i2c_piix4 pcspkr 2816 0 k8temp 4608 0 ati_agp 7180 0 tsdev 6336 0 evdev 8192 5 fan 3716 0 button 6032 0 battery 8324 0 ac 3972 0 kqemu 121892 0 gspca 641744 0 videodev 25216 1 gspca v4l2_common 22656 1 videodev v4l1_compat 13956 1 videodev snd_seq_oss 29184 0 snd_seq_midi_event 6528 1 snd_seq_oss snd_seq 46928 4 snd_seq_oss,snd_seq_midi_event snd_seq_device 6796 2 snd_seq_oss,snd_seq snd_pcm_oss 39072 0 snd_mixer_oss 14464 1 snd_pcm_oss snd_atiixp 15884 1 snd_ac97_codec 95396 2 snd_atiixp_modem,snd_atiixp ac97_bus 2432 1 snd_ac97_codec snd_pcm 68740 4 snd_atiixp_modem,snd_pcm_oss,snd_atiixp,snd_ac97_codec snd_timer 19204 2 snd_seq,snd_pcm snd 43876 12 snd_atiixp_modem,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_atiixp,snd_ac97_codec,snd_pcm,snd_timer soundcore 6496 1 snd snd_page_alloc 7944 3 snd_atiixp_modem,snd_atiixp,snd_pcm ndiswrapper 181332 0 fglrx 647484 15 agpgart 26200 2 ati_agp,fglrx capability 3592 0 commoncap 5632 1 capability tun 8448 0 fuse 39188 0 freq_table 4240 1 powernow_k8 cpufreq_userspace 3664 0 bcm43xx 118420 0 ieee80211softmac 26496 1 bcm43xx ieee80211 30536 2 bcm43xx,ieee80211softmac ieee80211_crypt 4992 1 ieee80211 r8169 25224 0 ext3 119176 1 jbd 55336 1 ext3 mbcache 7044 1 ext3 sr_mod 14372 0 cdrom 34464 1 sr_mod sd_mod 16768 3 ehci_hcd 29964 0 ohci_hcd 18948 0 usbcore 112392 6 usbhid,gspca,ndiswrapper,ehci_hcd,ohci_hcd ata_generic 5380 0 pata_atiixp 5888 2 libata 94228 2 ata_generic,pata_atiixp
on first bootup
[will@Ghost32 ~]$ cpufreq-info cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to firstname.lastname@example.org, please. analyzing CPU 0: driver: powernow-k8 CPUs which need to switch frequency at the same time: 0 hardware limits: 800 MHz - 1.60 GHz available frequency steps: 1.60 GHz, 800 MHz available cpufreq governors: userspace, performance current policy: frequency should be within 800 MHz and 1.60 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency is 1.60 GHz.
after about 20 seconds
[will@Ghost32 ~]$ cpufreq-info cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to email@example.com, please. analyzing CPU 0: driver: powernow-k8 CPUs which need to switch frequency at the same time: 0 hardware limits: 800 MHz - 1.60 GHz available frequency steps: 1.60 GHz, 800 MHz available cpufreq governors: userspace, performance current policy: frequency should be within 800 MHz and 800 MHz. The governor "performance" may decide which speed to use within this range. current CPU frequency is 800 MHz. [will@Ghost32 ~]$
MODULES=(r8169 bcm43xx acer_acpi powernow-k8 cpufreq-ondemand cpufreq-powersave cpufreq_userspace freq_table fuse tun capability fglrx ndiswrapper snd_atiixp gspca kqemu)
I'm not quite sure as why it limits my current policy to only 800Mhz. I've tried to tell the policy what the scaling_max_freq is, but it won't let me change it.
[root@Ghost32 will]# echo -n 1600000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq [will@Ghost32 cpufreq]$ cat scaling_max_freq 960000
it shows 960000 the first time I try to change it, which is odd. Then what used to happen is that minutes later it goes back to 800mhz and wont let me change it from that. More recently it has let me increase the maximum back up to 960000 but no higher.
Let me know if i'm leaving anything out or if there is any more information I can provide. I had this working on a previous install of arch, so I know acer_acpi and all this DOES work, I'm just confused as to why it will not work now.
Edit: I would guess that the problems I'm having are with the powernow-k8 module. Without it loaded I run at the full 1600MHz and with it loaded it stays at 1.6Ghz for a few seconds, then brings be right down to 800MHz. Has anyone else had similar problems or would they care to give any suggestions?
Last edited by The_Nerd (2007-04-26 19:08:39)
For no reason whatsoever, everything started working today. I have made no changes to my configuration, but I have been updating regularly. Apparently something fixed it along the way. If someone is to encounter the problem in the future, I guess all I can say for advice is wait it out.
run top while tarring your stuff, is the used cpu consumed in user+sys or in wait?
To know recursion, you must first know recursion.