Bug 15540 - CPU throttling is not supported on Intel Clarkdale and Arrandale CPUs (i3/i5/Pentium G6950)
Summary: CPU throttling is not supported on Intel Clarkdale and Arrandale CPUs (i3/i5/...
Status: REJECTED DOCUMENTED
Alias: None
Product: ACPI
Classification: Unclassified
Component: Power-Processor (show other bugs)
Hardware: All Linux
: P1 high
Assignee: Zhang Rui
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-03-15 15:16 UTC by Artem S. Tashkinov
Modified: 2010-07-01 01:20 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.34
Subsystem:
Regression: No
Bisected commit-id:


Attachments
script to get acpi tables (406 bytes, application/octet-stream)
2010-03-18 06:24 UTC, Zhang Rui
Details
ACPI tables for Intel Core i5 650/H55 MB (12.59 KB, application/octet-stream)
2010-03-18 07:41 UTC, Artem S. Tashkinov
Details
bzip2'ed kernel 2.6.33.1 dmesg (13.32 KB, application/octet-stream)
2010-03-18 11:42 UTC, Artem S. Tashkinov
Details
dmesg with acpi.debug_level=0x07 (57.80 KB, text/plain)
2010-05-21 05:13 UTC, Artem S. Tashkinov
Details
`grep . /proc/acpi/processor/*/*` with acpi.debug_level=0x07 (4.48 KB, text/plain)
2010-05-21 05:14 UTC, Artem S. Tashkinov
Details
dmesg with acpi.debug_level=0x07 and acpi.debug_layer=0x20000000 (80.77 KB, text/plain)
2010-05-21 05:53 UTC, Artem S. Tashkinov
Details
dmidecode (9.67 KB, text/plain)
2010-06-30 07:53 UTC, Artem S. Tashkinov
Details

Description Artem S. Tashkinov 2010-03-15 15:16:16 UTC
cd /proc/acpi/processor/CPU0/

$ cat limit
<not supported>

$ cat throttling
<not supported>

$ cat info

cat info
processor id:            0
acpi id:                 1
bus mastering control:   no
power management:        yes
throttling control:      no
limit interface:         no

$ cat power
active state:            C0
max_cstate:              C8
maximum allowed latency: 2000000000 usec
states:
    C1:                  type[C1] promotion[--] demotion[--] latency[001] usage[00048959] duration[00000000000000000000]
    C2:                  type[C2] promotion[--] demotion[--] latency[017] usage[05494543] duration[00000000079458708139]
    C3:                  type[C3] promotion[--] demotion[--] latency[017] usage[02380836] duration[00000000019023787530]

My CPU:
cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 37
model name      : Intel(R) Core(TM) i5 CPU         650  @ 3.20GHz
stepping        : 2
cpu MHz         : 1200.000
cache size      : 4096 KB
physical id     : 0
siblings        : 4
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 11
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 pbe nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt aes lahf_lm ida arat tpr_shadow vnmi flexpriority ept vpid
bogomips        : 6626.47
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:
Comment 1 Zhang Rui 2010-03-18 06:24:46 UTC
Created attachment 25575 [details]
script to get acpi tables

please run the script as root user to get the acpi tables of this platform.
and then attach all the files in the acpi-tables directory created, or you can send me a tarball.
Comment 2 Artem S. Tashkinov 2010-03-18 07:41:10 UTC
Created attachment 25579 [details]
ACPI tables for Intel Core i5 650/H55 MB

Here it is.
Comment 3 Zhang Rui 2010-03-18 08:58:37 UTC
why there is only one CPU available?
please attach the full dmesg output.
Comment 4 Artem S. Tashkinov 2010-03-18 11:42:58 UTC
Created attachment 25589 [details]
bzip2'ed kernel 2.6.33.1 dmesg
Comment 5 Artem S. Tashkinov 2010-03-18 11:44:46 UTC
Zhang, there are "four" CPUs, I just didn't include the entire /proc/cpuinfo information, because the other "three" cores share absolutely the same data.
Comment 6 Zhang Rui 2010-05-20 08:04:10 UTC
please set CONFIG_ACPI_DEBUG, and reboot with acpi.debug_level=0x07 acpi.debug_layer=0x20000000
please attach the full dmesg output after boot.
please attach the output of "grep . /proc/acpi/processor/*/*"
Comment 7 Artem S. Tashkinov 2010-05-21 05:13:56 UTC
Created attachment 26479 [details]
dmesg with acpi.debug_level=0x07
Comment 8 Artem S. Tashkinov 2010-05-21 05:14:55 UTC
Created attachment 26480 [details]
`grep . /proc/acpi/processor/*/*` with acpi.debug_level=0x07
Comment 9 Zhang Rui 2010-05-21 05:45:19 UTC
please attach the dmesg with boot option acpi.debug_level=0x07 AND acpi.debug_layer=0x20000000
Comment 10 Artem S. Tashkinov 2010-05-21 05:53:03 UTC
Created attachment 26481 [details]
dmesg with acpi.debug_level=0x07 and acpi.debug_layer=0x20000000

grep has the same output as before.
Comment 11 Zhang Rui 2010-06-29 08:46:43 UTC
ACPI defines two processor throttling (T state) control interfaces. These are:
   1) The Processor Register Block’s (P_BLK’s) P_CNT register, and
   2) The combined _PTC, _TSS, and _TPC objects in the processor’s object list.

From the dmesg attached, we can see that
[    3.439194] processor_throttling-1143 [00] processor_get_throttli: pblk_address[0x00000810] duty_offset[1] duty_width[0]
[    3.439200] processor_throttling-0893 [00] processor_get_fadt_inf: No throttling states

So duty_width is 0 in this machine, according to the ACPI spec, "A DUTY_WIDTH value of 0 indicates that processor duty cycle is not supported and the processor continuously runs at its base frequency."
which means that throttling via P_CNT is not available.

And there is not _PTC/_TSS/_TPC control method in the ACPI namespace.

I think we can get the conclusion that CPU throttling is not available in this machine.
Comment 12 Artem S. Tashkinov 2010-06-29 10:17:21 UTC
Are you saying that I have a buggy BIOS?

Can you on behalf of Intel contact AsRock and advise them to release a fixed BIOS version?

I tried contacting them several times, but all my queries are left unanswered.
Comment 13 Zhang Rui 2010-06-30 03:30:41 UTC
please check your BIOS to see if there is any BIOS options that t-state releated.
If not, this means that t-state is disabled on purpose, this may be the choice of the vendor.

BTW, I'm curious about why you need cpu throttling?
and please attach the dmidecode output of your machine.
Comment 14 Artem S. Tashkinov 2010-06-30 07:53:19 UTC
Created attachment 26977 [details]
dmidecode

I need it for two reasons:

1) to force maximum power savings of my CPU
2) to see if CPU throttling is enabled e.g. in case of overheating

So far I couldn't find any t-state relations options in my BIOS [manual]: http://www.asrock.com/mb/manual.asp?Model=H55DE3

It seems like I'll never buy any MB from this vendor again.
Comment 15 Zhang Rui 2010-06-30 08:19:54 UTC
(In reply to comment #14)
> Created an attachment (id=26977) [details]
> dmidecode
> 
> I need it for two reasons:
> 
> 1) to force maximum power savings of my CPU

No, we can never use processor t-states for power saving.
processor p-states and c-states can be used to save power but this is not true for t-states.
We only use t-states when system is overheating.

> 2) to see if CPU throttling is enabled e.g. in case of overheating
> 
yes. this May be a problem.
But I checked your acpidump, it seems that there is no ACPI thermal zone,
which means CPU will not be throttled even if t-states is supported.

> So far I couldn't find any t-state relations options in my BIOS [manual]:
> http://www.asrock.com/mb/manual.asp?Model=H55DE3
> 
> It seems like I'll never buy any MB from this vendor again.

my question is:
is this a laptop or desktop?
If it's a desktop, I don't think this is a problem because desktop has powerful fans.
If it's a laptop, I guess the thermal control is done by native sensors, in which ACPI is not involve neither.
Comment 16 Artem S. Tashkinov 2010-06-30 17:45:18 UTC
(In reply to comment #15)
> 
> my question is:
> is this a laptop or desktop?
> If it's a desktop, I don't think this is a problem because desktop has
> powerful
> fans.
> If it's a laptop, I guess the thermal control is done by native sensors, in
> which ACPI is not involve neither.

It's a desktop, but knowing that all my previous older Intel CPUs (starting from P4) had throttling controls it's kinda weird to learn that with newer Intel CPUs everything has changed.

I just want some control of my Intel i5 CPU because of the bug 15539 (which has zero responses), even 9 years old Windows XP can regulate this CPU [speed] using standard CPU driver (processr.sys/intelppm.sys).
Comment 17 Zhang Rui 2010-07-01 01:20:48 UTC
> It's a desktop, but knowing that all my previous older Intel CPUs (starting
> from P4) had throttling controls it's kinda weird to learn that with newer
> Intel CPUs everything has changed.
> 
well, I checked another Clarkdale processor and it does have 8 throttling states.
So I'd rather say this is just vendor specific.

> I just want some control of my Intel i5 CPU because of the bug 15539 (which
> has
> zero responses), even 9 years old Windows XP can regulate this CPU [speed]
> using standard CPU driver (processr.sys/intelppm.sys).

sure the processor p-state control must work well in Linux,
let's look into this issue in bug #15539.

Note You need to log in before you can comment on or make changes to this bug.