You are not logged in.

#1 2016-07-13 13:58:41

Triver
Member
Registered: 2009-03-29
Posts: 71

[SOLVED] Skylake i5-6300U won't go below C2 powerstate

So here is the output of powertop (running idle):

          Package   |             Core    |            CPU 0       CPU 2
                    |                     | C0 active   0.7%        0.1%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.1 ms  0.0%    0.0 ms
C2 (pc2)   91.1%    |                     |
C3 (pc3)    0.0%    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.2 ms  0.0%    0.0 ms
C6 (pc6)    0.0%    | C6 (cc6)    4.4%    | C6-SKL      4.6%    1.1 ms  0.0%    0.0 ms
C7 (pc7)    0.0%    | C7 (cc7)   89.3%    | C7s-SKL     0.0%    0.4 ms  0.0%    0.0 ms
C8 (pc8)    0.0%    |                     | C8-SKL     36.4%    1.6 ms  0.8%   11.6 ms
C9 (pc9)    0.0%    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
C10 (pc10)  0.0%    |                     | C10-SKL    54.7%   29.5 ms 99.0%  103.1 ms

                    |             Core    |            CPU 1       CPU 3
                    |                     | C0 active   0.2%        0.1%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.1 ms  0.0%    0.0 ms
                    |                     |
                    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.4 ms  0.0%    0.0 ms
                    | C6 (cc6)    0.1%    | C6-SKL      0.2%    1.0 ms  0.0%    0.7 ms
                    | C7 (cc7)   98.2%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C8-SKL      2.6%    3.7 ms  6.0%    8.2 ms
                    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C10-SKL    96.7%   35.5 ms 93.5%   88.7 ms

                    |             GPU     |
                    |                     |
                    | Powered On  1.3%    |
                    | RC6        98.7%    |
                    | RC6p        0.0%    |
                    | RC6pp       0.0%    |
                    |                     |

I haven't really done any special configuration on my system regarding power settings (except for blacklisting hdmi audio and webcam moduls, as well as setting a timeout for the audio card to go into powersave), so maybe there is something that I need to en/disable for this to work?

I am aware that there have been some issues in the kernel with the Skylake architecture but I was under the impression that at least some of that has been addressed in the 4.6 kernel version (I'm using v4.6.3), so I would expect at least some degree of more efficient power saving.

And it seems to work for at least one other user in Ubuntu, so I don't think its an issue of the kernel not supporting it (unless there are only specific CPU models supported at this point?)

Last edited by Triver (2016-07-15 15:23:25)

Offline

#2 2016-07-13 14:18:52

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

I am also seeing that, but I suspect that to get the package C-State to deeper sleep states there are a few more things that are needed, such as other peripherals going to "sleep", see [1]. My skylake is a mobile part, so I suspect this is still the expected result, that other result you point to may come from a desktop skylake cpu.

          Package   |             Core    |            CPU 0       CPU 2
                    |                     | C0 active   0.2%        0.2%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.8%   16.6 ms  4.9%   18.0 ms
C2 (pc2)   88.9%    |                     |
C3 (pc3)    0.0%    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.3 ms  0.0%    1.2 ms
C6 (pc6)    0.0%    | C6 (cc6)    0.2%    | C6-SKL      0.1%    0.7 ms  0.2%    0.7 ms
C7 (pc7)    0.0%    | C7 (cc7)   92.0%    | C7s-SKL     0.0%    0.0 ms  0.0%    1.7 ms
C8 (pc8)    0.0%    |                     | C8-SKL      2.9%    3.2 ms  4.5%    3.8 ms
C9 (pc9)    0.0%    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.1 ms
C10 (pc10)  0.0%    |                     | C10-SKL    94.6%   59.1 ms 89.8%   47.1 ms

                    |             Core    |            CPU 1       CPU 3
                    |                     | C0 active   0.4%        0.1%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.1%    2.4 ms  0.0%    0.0 ms
                    |                     |
                    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.3 ms  0.0%    0.1 ms
                    | C6 (cc6)    0.1%    | C6-SKL      0.0%    0.5 ms  0.0%    1.0 ms
                    | C7 (cc7)   96.9%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C8-SKL      4.9%    4.1 ms  4.9%    4.4 ms
                    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C10-SKL    92.7%   24.5 ms 94.9%   58.8 ms

                    |             GPU     |
                    |                     |
                    | Powered On  0.6%    |
                    | RC6        99.4%    |
                    | RC6p        0.0%    |
                    | RC6pp       0.0%    |

[1] http://mjg59.dreamwidth.org/41713.html


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#3 2016-07-13 14:35:04

Triver
Member
Registered: 2009-03-29
Posts: 71

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Yeah I've read a similar article but since that was targeted towards the 4.4 / 4.5 kernel version I was hoping that at least part of those issues were resolved at this point.

There is also this user that seems to have it working for his mobile CPU, maybe its due to the fact that I have a NVMe SSD? Unfortunately that user doesn't specify this but I'm guessing thats part of the issue (since I've seen it mentioned a couple of times).

Last edited by Triver (2016-07-13 14:37:00)

Offline

#4 2016-07-13 15:24:06

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

I don't have an nvme disk, just a sata one and I don't see package c-states lower than c2, I used to see that with an older bios/fw if I'm not remembering incorrectly, but I'd rather have newer bios/fw with bugfixes than just getting lower package c-states, even if at the cost of long term reliability (vs things working properly now).


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#5 2016-07-13 15:49:52

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Could be related to SATA power management, see this: https://mjg59.dreamwidth.org/42156.html

Could also be something else. I know for sure package states bellow C7 are only achievable if all displays are off, but you should get at least C7 otherwise. Unless you're hitting some Linux shortcoming, like the SATA thing I linked to.

Offline

#6 2016-07-14 11:37:07

Triver
Member
Registered: 2009-03-29
Posts: 71

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Gusar wrote:

Could be related to SATA power management

Thanks, that seems to be part of the problem, a html report of powertop listed these as untuned:

VM writeback timeout 	echo '1500' > '/proc/sys/vm/dirty_writeback_centisecs';
NMI watchdog should be turned off 	echo '0' > '/proc/sys/kernel/nmi_watchdog';
Enable SATA link power management for host0 	echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
Enable SATA link power management for host1 	echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
Runtime PM for I2C Adapter i2c-6 (SMBus I801 adapter at efa0) 	echo 'auto' > '/sys/bus/i2c/devices/i2c-6/device/power/control';
Runtime PM for I2C Adapter i2c-1 (i915 gmbus dpb) 	echo 'auto' > '/sys/bus/i2c/devices/i2c-1/device/power/control';
Runtime PM for I2C Adapter i2c-2 (i915 gmbus dpd) 	echo 'auto' > '/sys/bus/i2c/devices/i2c-2/device/power/control';
Runtime PM for I2C Adapter i2c-0 (i915 gmbus dpc) 	echo 'auto' > '/sys/bus/i2c/devices/i2c-0/device/power/control';
Autosuspend for unknown USB device 1-7 (8087:0a2b) 	echo 'auto' > '/sys/bus/usb/devices/1-7/power/control';
Autosuspend for unknown USB device 1-9 (138a:0090) 	echo 'auto' > '/sys/bus/usb/devices/1-9/power/control';
Runtime PM for PCI Device Intel Corporation Skylake Host Bridge/DRAM Registers 	echo 'auto' > '/sys/bus/pci/devices/0000:00:00.0/power/control';
Runtime PM for PCI Device Intel Corporation Skylake Integrated Graphics 	echo 'auto' > '/sys/bus/pci/devices/0000:00:02.0/power/control';
Runtime PM for PCI Device Intel Corporation Skylake Gaussian Mixture Model 	echo 'auto' > '/sys/bus/pci/devices/0000:00:08.0/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP Thermal subsystem 	echo 'auto' > '/sys/bus/pci/devices/0000:00:14.2/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP USB 3.0 xHCI Controller 	echo 'auto' > '/sys/bus/pci/devices/0000:00:14.0/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP CSME HECI #1 	echo 'auto' > '/sys/bus/pci/devices/0000:00:16.0/power/control';
Runtime PM for PCI Device Intel Corporation Device 9d10 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.0/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP SATA Controller [AHCI mode] 	echo 'auto' > '/sys/bus/pci/devices/0000:00:17.0/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP LPC Controller 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.0/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP PMC 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.2/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP HD Audio 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.3/power/control';
Runtime PM for PCI Device Intel Corporation Sunrise Point-LP SMBus 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.4/power/control';
Runtime PM for PCI Device Intel Corporation Ethernet Connection I219-LM 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1f.6/power/control';
Runtime PM for PCI Device Realtek Semiconductor Co., Ltd. RTS522A PCI Express Card Reader 	echo 'auto' > '/sys/bus/pci/devices/0000:02:00.0/power/control';
Runtime PM for PCI Device Intel Corporation Device 9d12 	echo 'auto' > '/sys/bus/pci/devices/0000:00:1c.2/power/control';
Wake-on-lan status for device enp0s3 	ethtool -s enp0s3 wol d; 

After setting the SATA hosts to "min_power" this is the resulting output of powertop:

          Package   |             Core    |            CPU 0       CPU 2
                    |                     | C0 active   0.2%        0.9%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.0 ms  0.0%    0.0 ms
C2 (pc2)    9.8%    |                     |
C3 (pc3)    0.0%    | C3 (cc3)    0.1%    | C3-SKL      0.0%    0.0 ms  0.1%    0.7 ms
C6 (pc6)   56.8%    | C6 (cc6)    0.1%    | C6-SKL      0.1%    0.6 ms  0.1%    0.3 ms
C7 (pc7)   26.3%    | C7 (cc7)   94.1%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
C8 (pc8)    0.0%    |                     | C8-SKL      3.4%    3.9 ms 43.9%    3.1 ms
C9 (pc9)    0.0%    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
C10 (pc10)  0.0%    |                     | C10-SKL    93.6%   31.8 ms 54.2%  193.6 ms

                    |             Core    |            CPU 1       CPU 3
                    |                     | C0 active   0.4%        0.1%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.1 ms  0.0%    0.0 ms
                    |                     |
                    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.1 ms  0.0%    0.0 ms
                    | C6 (cc6)    0.0%    | C6-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    | C7 (cc7)   98.6%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C8-SKL      5.1%    2.8 ms  2.4%    5.2 ms
                    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C10-SKL    94.4%   14.9 ms 99.3%   38.7 ms

                    |             GPU     |
                    |                     |
                    | Powered On  1.0%    |
                    | RC6        99.0%    |
                    | RC6p        0.0%    |
                    | RC6pp       0.0%    |

So it really seems to be an issue of other devices still draining enough power to prevent the CPU from going into a lower state.

However this leaves me with two questions:
- is it safe to apply the rest of these suggestions or could some of these result into something not working properly? (I'm guessing all the "auto" stuff should be safe since it implies that the according device decides what to do but what about the VM writeback timeout and disabling the NMI watchdog?)
- is there a "proper" way to apply these settings on startup? (as in not executing these commands in some self-written bash script but rather defining these values for each device in some config file that gets loaded by the system, like its currently done for my audio device over the /etc/modprobe.d/ directory?

Offline

#7 2016-07-14 14:54:35

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Personally I tend not to change the defaults, the reason is that kernel devs probably know better why some more aggressive power saving is not enabled, see [1] (and the end of Matthew Garrett's post) for why the sata power savings patches were not accepted. I have also seen people blindly enabling things, such as usb auto suspend and then coming to complain to the forums that their usb mouse/keyboard stop working after some time.

To set things on startup you could use a configuration file in /etc/tmpfiles.d/ and write the values you want to the correct places. The powertop html report already says what to write and where, how to do it with tmpfile is left as homework (hint: see 'man tmpfiles.d' or the wiki).

[1] https://mjg59.dreamwidth.org/41713.html … cmt1637617

Edit:
I have tempted luck tested toggling all "bad" tunables in powertop and after doing so I do get a good percentage of package c7 residency but I do not see deeper sleep states being used, even with the monitor off. I have also tested toggling only the SATA link power management for host{0,1} and that alone makes package c6 residency go up, but no c7.

But like I said before, changing these things without knowing exactly what they do and how the hardware will behave is a good recipe for trouble, and in this case a good recipe for data loss.

Edit 2:
I'm going to tempt luck and now I'm running with sata alpm tuned to min_power, I'll report back if I'm bitten by it and get data loss or problems. For the record I'm running a crucial mx200 fw MU04 on a lenovo e560. I have also figured out what was preventing the laptop from going into PC7, it was the built-in intel bluetooth card, an udev rule later to allow it to autosuspend and the machine is happily going into PC7 without any further changes to any tunables.

Last edited by R00KIE (2016-07-15 15:04:51)


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#8 2016-07-15 15:20:11

Triver
Member
Registered: 2009-03-29
Posts: 71

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

R00KIE wrote:

Personally I tend not to change the defaults, the reason is that kernel devs probably know better why some more aggressive power saving is not enabled, see [1] (and the end of Matthew Garrett's post) for why the sata power savings patches were not accepted.

If I understood it correctly this should only affect SSDs that are connected via the SATA interface which is not the case for me (like the author of that linked article, I only have a NVMe SSD with no exposure of a SATA interface), so there shouldn't be any downsides for me to permanently set it to "min_power"?


R00KIE wrote:

To set things on startup you could use a configuration file in /etc/tmpfiles.d/ and write the values you want to the correct places. The powertop html report already says what to write and where, how to do it with tmpfile is left as homework (hint: see 'man tmpfiles.d' or the wiki).

I did try to do some "homework" on this since its the first time I'm hearing about it but it doesn't sound like its meant to used for what I have in mind?
Anyway after searching around a bit more about what I could do instead, it seems like a udev rule is probably the closest thing to what I want to do (in a "proper" way).


R00KIE wrote:

I have tempted luck tested toggling all "bad" tunables in powertop and after doing so I do get a good percentage of package c7 residency but I do not see deeper sleep states being used, even with the monitor off. I have also tested toggling only the SATA link power management for host{0,1} and that alone makes package c6 residency go up, but no c7.

But like I said before, changing these things without knowing exactly what they do and how the hardware will behave is a good recipe for trouble, and in this case a good recipe for data loss.

Well for the time being it would be good enough for me to just go below C2 so I'll probably only stick with changing the values for the SATA hosts.
It might not unlock the "full potential" for powersaving but its definitely a good start (though I might try out the other suggestions as well, just for testing purposes).

Last edited by Triver (2016-07-15 15:41:52)

Offline

#9 2016-07-15 16:19:05

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

I would say that you should keep your backups up-to-date. The blog post seems to imply that the problem is only with sata drives but better safe than sorry, who knows what kind of bugs are lurking in the firmware of the disks.

Regarding udev vs tmpfiles, use whatever you feel more comfortable using, for now I'm using something like this
/etc/tmpfiles.d/sata_alpm.conf:

w /sys/class/scsi_host/host0/link_power_management_policy - - - - min_power
w /sys/class/scsi_host/host1/link_power_management_policy - - - - min_power

After seeing this [1] I'm not sure if deeper than PC7 is possible, at least taking into account the data that powertop reports. See figure 4-2 on page 61, powertop reports only CC7, no CC8 or deeper so it would seem to imply that the lowest package c-state would be PC7.

[1] http://www.intel.com/content/dam/www/pu … -vol-1.pdf


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#10 2016-07-15 18:23:36

Triver
Member
Registered: 2009-03-29
Posts: 71

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

R00KIE wrote:

After seeing this [1] I'm not sure if deeper than PC7 is possible, at least taking into account the data that powertop reports. See figure 4-2 on page 61, powertop reports only CC7, no CC8 or deeper so it would seem to imply that the lowest package c-state would be PC7.

Looking at the source code powertop will apparently only list cc1, cc3, cc6 and cc7 states.
I'm not sure why only these particular states are measured*, but I don't think its an indication that pc8-pc10 are unachievable/unsupported (at this point in time).
Not to mention that there already are systems that go at least into pc8 (like the two I linked to earlier).

*: Maybe because these are the only important ones for the cores? The figure in your linked pdf seems to indicate that cc7-cc10 are essentially the same. Could also be that they're just not implemented in the tool yet but I somehow doubt that.

Last edited by Triver (2016-07-15 18:28:29)

Offline

#11 2016-07-15 18:38:07

graysky
Wiki Maintainer
From: :wq
Registered: 2008-12-01
Posts: 10,597
Website

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

i7z is a good tool to measure the Cx state.  Try it.


CPU-optimized Linux-ck packages @ Repo-ck  • AUR packagesZsh and other configs

Offline

#12 2016-07-15 19:19:04

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

R00KIE wrote:

See figure 4-2 on page 61, powertop reports only CC7, no CC8 or deeper so it would seem to imply that the lowest package c-state would be PC7.

Not sure how you got to that conclusion. The lowest package c-state PC10, where package = CPU+GPU+memory controller+display controller+SATA controller+possibly some other controllers.

@graysky: I'm not sure i7z is still good, it hasn't seen development in a long time, plus it only shows core states, not package states. I'd rather recommend turbostat, but the numbers it'd show would highly likely be identical to the powertop numbers.

Last edited by Gusar (2016-07-15 19:29:13)

Offline

#13 2016-07-15 20:28:23

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Gusar wrote:
R00KIE wrote:

See figure 4-2 on page 61, powertop reports only CC7, no CC8 or deeper so it would seem to imply that the lowest package c-state would be PC7.

Not sure how you got to that conclusion. The lowest package c-state PC10, where package = CPU+GPU+memory controller+display controller+SATA controller+possibly some other controllers.

By connecting what powertop reports with the matrix on the datasheet. But as Triver pointed out, there are examples where PC8 is used so there goes my theory smile


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#14 2016-07-15 20:35:49

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

R00KIE wrote:

By connecting what powertop reports with the matrix on the datasheet.

I still don't get it. powertop clearly shows PC10 and so does the datasheet. The datasheet also explains what happens in each state, up to and including PC10.

Offline

#15 2016-07-15 20:43:25

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

But it only shows up to CC7, which is where the cores spend most of the time in an idle machine (unless CC7 to CC10 are all counted as CC7) and if you look at the matrix if the core c-state is c7 then the maximum package c-state is PC7. That is what led me to mistakenly assume PC7 might be the deepest package c-state achievable.

Edit:
On a related note, now that the cpu goes down to PC7 I'm starting to see screen flickering and I have this on dmesg

[11146.503979] [drm:intel_cpu_fifo_underrun_irq_handler [i915]] *ERROR* CPU pipe A FIFO underrun
[13602.373724] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=414495 end=414496) time 173 us, min 1073, max 1079, scanline start 1069, end 1081
[15161.609793] [drm:intel_pipe_update_end [i915]] *ERROR* Atomic update failure on pipe A (start=38859 end=38860) time 410 us, min 1073, max 1079, scanline start 1063, end 1090

Not nice having to choose either long term reliability or no glitches.

Last edited by R00KIE (2016-07-15 22:53:16)


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#16 2017-03-12 10:34:04

skylakeness
Member
Registered: 2017-03-12
Posts: 1

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

Triver wrote:
Gusar wrote:

Could be related to SATA power management

Thanks, that seems to be part of the problem, a html report of powertop listed these as untuned:

...
Enable SATA link power management for host0 	echo 'min_power' > '/sys/class/scsi_host/host0/link_power_management_policy';
Enable SATA link power management for host1 	echo 'min_power' > '/sys/class/scsi_host/host1/link_power_management_policy';
...

After setting the SATA hosts to "min_power" this is the resulting output of powertop:

          Package   |             Core    |            CPU 0       CPU 2
                    |                     | C0 active   0.2%        0.9%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.0 ms  0.0%    0.0 ms
C2 (pc2)    9.8%    |                     |
C3 (pc3)    0.0%    | C3 (cc3)    0.1%    | C3-SKL      0.0%    0.0 ms  0.1%    0.7 ms
C6 (pc6)   56.8%    | C6 (cc6)    0.1%    | C6-SKL      0.1%    0.6 ms  0.1%    0.3 ms
C7 (pc7)   26.3%    | C7 (cc7)   94.1%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
C8 (pc8)    0.0%    |                     | C8-SKL      3.4%    3.9 ms 43.9%    3.1 ms
C9 (pc9)    0.0%    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
C10 (pc10)  0.0%    |                     | C10-SKL    93.6%   31.8 ms 54.2%  193.6 ms

                    |             Core    |            CPU 1       CPU 3
                    |                     | C0 active   0.4%        0.1%
                    |                     | POLL        0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C1E-SKL     0.0%    0.1 ms  0.0%    0.0 ms
                    |                     |
                    | C3 (cc3)    0.0%    | C3-SKL      0.0%    0.1 ms  0.0%    0.0 ms
                    | C6 (cc6)    0.0%    | C6-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    | C7 (cc7)   98.6%    | C7s-SKL     0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C8-SKL      5.1%    2.8 ms  2.4%    5.2 ms
                    |                     | C9-SKL      0.0%    0.0 ms  0.0%    0.0 ms
                    |                     | C10-SKL    94.4%   14.9 ms 99.3%   38.7 ms

                    |             GPU     |
                    |                     |
                    | Powered On  1.0%    |
                    | RC6        99.0%    |
                    | RC6p        0.0%    |
                    | RC6pp       0.0%    |

So it really seems to be an issue of other devices still draining enough power to prevent the CPU from going into a lower state.

Hi, sorry for resurrecting a solved thread but I recently got a Skylake laptop that seems very similar to your machine. (mine is an Asus Vivobook with Nvidia 920MX and an i5-6198DU)
My powertop output looks the same as yours (not depper than PC2), only the SATA powert power management setting didn't change anything. I'm on Ubuntu 16.04.2, kernel 4.8 longterm. I was able to get PC3 on kernel 4.11rc but then the Nvidia drivers wouldn't work.
Do you also have an Nvidia dedicated graphics card by any chance?

Thank you!

Offline

#17 2017-03-12 14:35:12

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: [SOLVED] Skylake i5-6300U won't go below C2 powerstate

skylakeness wrote:

I'm on Ubuntu 16.04.2, kernel 4.8 longterm. I was able to get PC3 on kernel 4.11rc but then the Nvidia drivers wouldn't work.

We support Arch only https://wiki.archlinux.org/index.php/Co … .2Aonly.2A

Don't ever again resurrect a solved thread to ask for support about other distros.

Closing.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

Board footer

Powered by FluxBB