# p4 clock modulation issues

## zerbet

I've got a pentium 4 laptop at 3.2 GHz with on-demand clock modulation and hyperthreading. Thus it runs as if I had 2 cpu and makes me feel I'm a real geek. I installed speedfreq, a little daemon that changes the clock speed accordingly to my demands. It normally switches to 266 MHz when I'm Idle, and to 1866 MHz when I'm at full charge.

-> Why only 1866? I thought I could run 3200! I looked in /sys/devices/system/cpu/cpu*/cpufreq/* and scaling_max_freq is set on 1866620, I can't set it above that value.

-> I also noticed that speedfreqd changed the frequency only according to cpu0. Thus if cpu1 is at full charge and cpu0 is idle the frequency stays at 266MHz. Can I do something to change that behaviour?

-> Did you notice any battery performance increase after using clock modulation?

Thanks,

Zerbet

----------

## RayDude

 *zerbet wrote:*   

> I've got a pentium 4 laptop at 3.2 GHz with on-demand clock modulation and hyperthreading. Thus it runs as if I had 2 cpu and makes me feel I'm a real geek. I installed speedfreq, a little daemon that changes the clock speed accordingly to my demands. It normally switches to 266 MHz when I'm Idle, and to 1866 MHz when I'm at full charge.
> 
> -> Why only 1866? I thought I could run 3200! I looked in /sys/devices/system/cpu/cpu*/cpufreq/* and scaling_max_freq is set on 1866620, I can't set it above that value.
> 
> -> I also noticed that speedfreqd changed the frequency only according to cpu0. Thus if cpu1 is at full charge and cpu0 is idle the frequency stays at 266MHz. Can I do something to change that behaviour?
> ...

 

I've been learning a lot about this stuff. First off, p4clock_mod does NOT control voltages, so don't use it in a laptop. I believe its for Desktop usage.

You should be using speedstep-ich which will control voltage.

I love speedfreq, but apparently its no longer supported so at some point I'm going to switch to cpufreqd (even though it seems like a PITA.)

I'm not sure why p4clock_mod is showing the wrong max frequncy, but if you enable speedstep-ich, you may see different results, less freqeuncies and less steps.

For example my P4M-2.4 has a bunch of options with p4clock_mod (from 300MHz to 2400 MHz) but speedstep-ich only has 2: 1200 and 2400 MHz. However, running at 1200 MHz with lower voltage produces less power consumption for me, so the driver is obviously better.

Feel free to ask questions. Soon I'm embarking on the ACPI power states to see if I can increase my battery usage efficiency to be on par with Windows.

Raydude

----------

## zerbet

well firstly: do you know for what purpose you can use p4_clockmod if it doesn't give you better battery performance by setting down the voltage? I mean: what is it good for?

I disabled p4_clockmod and enabled speedstep-ich in the kernel config, but after rebooting, cpufreqd won't load because he can't find any active cpufreq driver. looking at dmesg, I have noticed that the line stating "p4 clock modulation" disappeared and wasn't replaced. My conclusion is that I don't have an ICH southbridge, but I don't know where to look at. I only know lspci for that sort of info...

I used some nice tips in the powersaving guide from gentoo:

http://www.gentoo.org/doc/en/power-management-guide.xml

You could have a look at it if you didn't already. It's nice, but beware: I installed the maksed laptop-mode-tools, and they gave me a rather nasty bug (at least I think that it's the laptop-mode-tools): I get a bogus screen when I shutdown X and the laptop freezes. Now I've go some broken files, and gkrellm won't run anymore ;( 

Oh, and I switched to cpufreqd: its on-demand policy is less aggressive than speedfreqd, but that doesn't matter after all... The one nice thing I'd like to see working is the system setting down the voltage... I must say: downclocking doesn't work with windows, and I achieved it with linux. So I'm not hopeless...

----------

## RayDude

 *zerbet wrote:*   

> well firstly: do you know for what purpose you can use p4_clockmod if it doesn't give you better battery performance by setting down the voltage? I mean: what is it good for?
> 
> I disabled p4_clockmod and enabled speedstep-ich in the kernel config, but after rebooting, cpufreqd won't load because he can't find any active cpufreq driver. looking at dmesg, I have noticed that the line stating "p4 clock modulation" disappeared and wasn't replaced. My conclusion is that I don't have an ICH southbridge, but I don't know where to look at. I only know lspci for that sort of info...
> 
> I used some nice tips in the powersaving guide from gentoo:
> ...

 

p4-clockmod does improve battery life, but not as well as speedstep-ich, because speedstep-ich adjusts the voltage.

Hmmm. I wonder, do you have a mobile part? Maybe speedstep-ich only works on mobile chipsets.

Thanks for the warning on laptop mode tools.

Are you using p4 clock mod? have you tried other intel speedstep drivers?

Raydude

----------

## zerbet

well, I've got a mobile prescott pentium 4 @ 3,2GHz. What is yours? and your southbridge? Because I've got a Sis SB 963, maybe that's why speedstep-ich won't load. I also tested speedstep-smi and speedstep-centrino, but they don't work either. Only p4-clockmod works, how sad. By the way how do you read what southbridge you have on your computer using linux?

Cheers

Zerbet

----------

## RayDude

 *zerbet wrote:*   

> well, I've got a mobile prescott pentium 4 @ 3,2GHz. What is yours? and your southbridge? Because I've got a Sis SB 963, maybe that's why speedstep-ich won't load. I also tested speedstep-smi and speedstep-centrino, but they don't work either. Only p4-clockmod works, how sad. By the way how do you read what southbridge you have on your computer using linux?
> 
> Cheers
> 
> Zerbet

 

Now it makes sense. I have intel i810 chipset with an older (don't even know what silicon) P4 Mobile. Speedstep-ich is for intel northbridges.

Sys support for linux isn't very good from my AMD experience. It may be better on intel though.

You could try the ACPI Processor P-States driver to see if it does voltage control. I'm not sure if it does.

I looked, and there does not seem to be any support for the Sys chipset in the CPU frequency scaling page of the kernel config.

You may want to check sys' web site to see if they have a module you could compile in.

Raydude

----------

## zerbet

well, Sis don't have anything nice on their web page...

I had a look on http://acpi.sourceforge.net/documentation/processor.html , and I was wondering about something: have you got  a line called "performance management" in your /proc/acpi/processor/CPU1/info file? because it doesn't show up for me... Actually I just realised this is normal: I have no driver that can tell me if it is supported, hence it is not shown.

Anyway, thank you for your help raydude, you were quite a bit helpful to me!

Cheers

Zerbet

----------

## brodo

 *zerbet wrote:*   

> well firstly: do you know for what purpose you can use p4_clockmod if it doesn't give you better battery performance by setting down the voltage? I mean: what is it good for?

 

It's good for me for testing cpufreq stuff on my desktop system  :Wink: 

Actually, it has limited use for non-speedstep-capable P4s as you can avoid starting fans if setting the max_freq manually to something below the max speed.

----------

## desertstalker

Try the P-states driver.  It does do voltage changes (i used it on my centrino before they added support for it to the kernel).

It seems that the p-stets driver will work with any chipset (not sure though)

Give it a try.

----------

## brodo

 *desertstalker wrote:*   

> It seems that the p-stets driver will work with any chipset (not sure though)

  As the actual name ACPI P-States driver denotes, it should work on any system (i.e. BIOS) which properly exports the information about CPU frequency states to the ACPI subsystem.

----------

