Package: cpufrequtils
Version: 002-5

On the Core 2 Duo machines I have installed cpufrequtils on, the init
script says the following:

        CPUFreq Utilities: Setting ondemand CPUFreq 
governor...CPU0...CPU0...done.

As a result, one core uses ondemand and the other uses performance,
which is sub-optimal.

        [burly(~)] cpufreq-info 
        cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006
        Report errors and bugs to [EMAIL PROTECTED], please.
        analyzing CPU 0:
          driver: acpi-cpufreq
          CPUs which need to switch frequency at the same time: 0
          hardware limits: 1000 MHz - 2.00 GHz
          available frequency steps: 2.00 GHz, 1.83 GHz, 1.67 GHz, 1.50 GHz, 
1.33 GHz, 1000 MHz
          available cpufreq governors: ondemand, performance
          current policy: frequency should be within 1000 MHz and 2.00 GHz.
                          The governor "ondemand" may decide which speed to use
                          within this range.
          current CPU frequency is 1000 MHz.
        analyzing CPU 1:
          driver: acpi-cpufreq
          CPUs which need to switch frequency at the same time: 1
          hardware limits: 1000 MHz - 2.00 GHz
          available frequency steps: 2.00 GHz, 1.83 GHz, 1.67 GHz, 1.50 GHz, 
1.33 GHz, 1000 MHz
          available cpufreq governors: ondemand, performance
          current policy: frequency should be within 1000 MHz and 2.00 GHz.
                          The governor "performance" may decide which speed to 
use
                          within this range.
          current CPU frequency is 2.00 GHz.

This is because the init script is using the 'processor' field in
/proc/cpuinfo to locate the CPUs, which seems to enumerate packages or
dies rather than cores.

        [burly(~)] grep '^processor' /proc/cpuinfo 
        processor       : 0
        processor       : 0
        [burly(~)] grep '^physical id' /proc/cpuinfo 
        physical id     : 0
        physical id     : 0


Possible solutions:

1. Use the 'core id' field in /proc/cpuinfo.  I don't know how
   backward-compatible to previous kernel versions this is.

        [burly(~)] grep '^core id' /proc/cpuinfo 
        core id         : 0
        core id         : 1

2. Enumerate the sysfs attributes directly.

        [burly(~)] grep ^ /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
        /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor:ondemand
        /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor:ondemand

3. Ask cpufreq-info.

        [burly(~)] cpufreq-info -o | grep ^CPU
        CPU  0      1000000 kHz ( 50 %)  -    2000000 kHz (100 %)  -  ondemand
        CPU  1      1000000 kHz ( 50 %)  -    2000000 kHz (100 %)  -  ondemand


Regards,
-- 
Paul Collins
Wellington, New Zealand

Dag vijandelijk luchtschip de huismeester is dood



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to