linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* intel_pstate: Lowest frequency not reached with Intel i7-6700
@ 2018-12-12 21:40 Paul Menzel
  0 siblings, 0 replies; 7+ messages in thread
From: Paul Menzel @ 2018-12-12 21:40 UTC (permalink / raw)
  To: Srinivas Pandruvada, Len Brown; +Cc: linux-pm, LKML

Dear Linux folks,


Using *powersave* as P-state selection algorithm, on an idle system
with an Intel i7-6700 (Sandy Bridge), the frequency only goes down to
900 MHz instead of the minimum frequency of 800 MHz.

> $ uname -a
> Linux keineahnung.molgen.mpg.de 4.20.0-rc5.mx64.234 #1 SMP Mon Dec 3 16:58:29 CET 2018 x86_64 GNU/Linux
> $ dmesg | grep state
> [    0.000000] x86/fpu: xstate_offset[2]:  576, xstate_sizes[2]:  256
> [    0.000000] x86/fpu: xstate_offset[3]:  832, xstate_sizes[3]:   64
> [    0.000000] x86/fpu: xstate_offset[4]:  896, xstate_sizes[4]:   64
> [    0.000000] x86/fpu: Enabled xstate features 0x1f, context size is 960 bytes, using 'compacted' format.
> [    0.686027] acpi PNP0C0B:00: Failed to change power state to D0
> [    0.694017] acpi PNP0C0B:00: Failed to set initial power state
> [    0.703020] acpi PNP0C0B:01: Failed to change power state to D0
> [    0.712012] acpi PNP0C0B:01: Failed to set initial power state
> [    0.722010] acpi PNP0C0B:02: Failed to change power state to D0
> [    0.730013] acpi PNP0C0B:02: Failed to set initial power state
> [    0.739010] acpi PNP0C0B:03: Failed to change power state to D0
> [    0.748012] acpi PNP0C0B:03: Failed to set initial power state
> [    0.758009] acpi PNP0C0B:04: Failed to change power state to D0
> [    0.766012] acpi PNP0C0B:04: Failed to set initial power state
> [    0.767127] Monitor-Mwait will be used to enter C-1 state
> [    0.767131] Monitor-Mwait will be used to enter C-2 state
> [    0.767134] Monitor-Mwait will be used to enter C-3 state
> [    2.092456] intel_pstate: Intel P-state driver initializing
> [    2.094820] intel_pstate: HWP enabled
> $ lscpu
> Architecture:        x86_64
> CPU op-mode(s):      32-bit, 64-bit
> Byte Order:          Little Endian
> CPU(s):              8
> On-line CPU(s) list: 0-7
> Thread(s) per core:  2
> Core(s) per socket:  4
> Socket(s):           1
> NUMA node(s):        1
> Vendor ID:           GenuineIntel
> CPU family:          6
> Model:               94
> Model name:          Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
> Stepping:            3
> CPU MHz:             900.392
> CPU max MHz:         4000.0000
> CPU min MHz:         800.0000
> BogoMIPS:            6816.00
> Virtualization:      VT-x
> L1d cache:           32K
> L1i cache:           32K
> L2 cache:            256K
> L3 cache:            8192K
> NUMA node0 CPU(s):   0-7
> 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 syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
> $ cat /sys/devices/system/cpu/cpufreq/policy*/scaling_governor
> powersave
> powersave
> powersave
> powersave
> powersave
> powersave
> powersave
> powersave
> $ cat /sys/devices/system/cpu/cpufreq/policy*/scaling_cur_freq
> 900335
> 900285
> 900179
> 900314
> 900510
> 900226
> 900376
> 900375

Shouldn’t it go down until 800 MHz?


Kind regards,

Paul

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: intel_pstate: Lowest frequency not reached with Intel i7-6700
  2018-12-13 12:41     ` Paul Menzel
@ 2018-12-13 16:36       ` Srinivas Pandruvada
  0 siblings, 0 replies; 7+ messages in thread
From: Srinivas Pandruvada @ 2018-12-13 16:36 UTC (permalink / raw)
  To: Paul Menzel, Rafael J. Wysocki; +Cc: Doug Smythies, linux-pm, LKML, Len Brown

On Thu, 2018-12-13 at 13:41 +0100, Paul Menzel wrote:
> Dear Rafael,
> 
> 
> On 12/13/18 11:39, Rafael J. Wysocki wrote:
> > On Thu, Dec 13, 2018 at 10:54 AM Paul Menzel <pmenzel@molgen.mpg.de
> > > wrote:
> > > On 12/13/18 00:06, Doug Smythies wrote:
> > > > On 2018.12.12 13:40 Paul Menzel wrote:
> > > > 
> > > > > Using *powersave* as P-state selection algorithm, on an idle
> > > > > system
> > > > 
> > > > Define "idle system".
> > > > If your computer is running a GUI, or is even a server without
> > > > a GUI
> > > > but with many services running, then "idle" really isn't.
> > > > Below is from my test server, with many services disabled, so
> > > > "idle" really is quite "idle"
> > > > 
> > > > doug@s15:~/temp$ sudo turbostat --Summary --quiet --show
> > > > Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
> > > > Busy%   Bzy_MHz PkgTmp  PkgWatt
> > > > 0.01    1608    27      3.71
> > > > 0.01    1619    27      3.71
> > > > 0.01    1600    28      3.71
> > > > 0.01    1600    28      3.70
> > > > 
> > > > Note that p state 16 (1600 MHz) is the minimum for my older i7-
> > > > 2600k
> > > > processor.
> > > 
> > > The thing is, on an Intel Kaby Lake laptop with Ubuntu 18.10 and
> > > GNOME
> > > running, it goes down to the lowest listed frequency.
> 
> Checking the numbers again, I was mistaken. The lowest possible
> frequency
> of the Intel Kaby Lake i7-7500U in that laptop is 400 MHz, and it is
> going down to 600 MHz. Busy% from turbostat is 0.3 to 0.4.
> 
> > Kaby Lake has hardware-managed P-states (HWP) which is a different
> > mechanism.
> 
> Isn’t HWP also available for the 6th generation?
> 
>     $ dmesg | grep intel_pstate
>     [    2.092456] intel_pstate: Intel P-state driver initializing
>     [    2.094820] intel_pstate: HWP enabled
> 
> > > > > Shouldn’t it go down until 800 MHz?
> > > > 
> > > > We would need some actual busy information, turbostat is the
> > > > recommended tool, to know for sure.
> > > 
> > > Here you go.
> > > 
> > > ```
> > > tools/power/x86/turbostat> sudo ./turbostat --Summary --quiet --
> > > show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
> > > Busy%    Bzy_MHz    PkgTmp    PkgWatt
> > > 3.59    1167    31    1.68
> > > 3.21    903    31    1.34
> > > 3.21    906    31    1.34
> > > 3.27    901    31    1.35
> > > 8.23    2715    30    2.32  ← stopping GDM (systemctl stop gdm)
> > > 2.95    915    30    1.18
> > > 2.91    906    30    1.18
> > > 2.92    903    30    1.17
> > > 2.90    900    29    1.17
> > > 2.89    903    29    1.18
> > > 2.91    903    30    1.18
> > > 2.89    903    29    1.18
> > > 2.89    900    29    1.18
> > > 2.90    903    30    1.18
> > > 2.90    903    29    1.17
> > > 2.90    903    29    1.17
> > > 2.90    900    29    1.16
> > > 2.90    903    29    1.14
> > > 2.90    903    28    1.11
> > > 2.90    903    29    1.10
> > > 2.91    900    29    1.16
> > > 2.91    903    29    1.14
> > > 2.90    903    29    1.12
> > > 2.90    903    29    1.16
> > > 2.90    900    28    1.17
> > > 2.92    903    29    1.16
> > > 2.90    903    29    1.16
> > > 2.90    903    29    1.16
> > > ```
> > > 
> > > 800 MHz should be enough to keep GDM running, shouldn’t it?
> > 
> > Well, depending.
> > 
> > > Otherwise only SSH was running.
> > 
> > There obviously is something that causes it to stay at 900 MHz.
> 
> It’s not obvious to me, but you have more experience. It’d expect
> to at least one core(?) to go down to 800 MHz and not all to stay
> at 900 MHz.
Also HWP will pick up energy efficient P-state. If it sees that it is
better to run at a higher P-state and complete the job at the same
power level.
There is a way to turn off that but better not do.

Thanks,
Srinivas

> 
> > Please check max_perf_pct, min_perf_pct and num_pstates under
> > /sys/devices/system/cpu/intel_pstate/ .
> 
>     /sys/devices/system/cpu/intel_pstate> cat max_perf_pct
> min_perf_pct num_pstates
>     100
>     20
>     33
> 
> > Also cpuinfo_max_freq, cpuinfo_min_freq, scaling_max_freq,
> > scaling_min_freq under /sys/devices/system/cpu/cpufreq/policy0/ .
> 
> /sys/devices/system/cpu/cpufreq/policy0> cat cpuinfo_{min,max}_freq
> scaling_{min,max}_freq
>     800000
>     4000000
>     800000
>     4000000
> 
> > However, please note that Busy% of 3 isn't particularly low.
> 
> Indeed. On the laptop it is around 0.3 to 0.4 even with GNOME
> running.
> 
> So, to check if everything is working, I boot into initramfs
> and check the numbers there?
> 
> 
> Kind regards,
> 
> Paul
> 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: intel_pstate: Lowest frequency not reached with Intel i7-6700
  2018-12-13 10:39   ` Rafael J. Wysocki
  2018-12-13 12:41     ` Paul Menzel
@ 2018-12-13 16:21     ` Doug Smythies
  1 sibling, 0 replies; 7+ messages in thread
From: Doug Smythies @ 2018-12-13 16:21 UTC (permalink / raw)
  To: 'Paul Menzel'
  Cc: linux-pm, 'LKML', 'Srinivas Pandruvada',
	'Len Brown', 'Rafael J. Wysocki',
	Doug Smythies

On 2018.12.13 04:42 Paul Menzel wrote:
> On 12/13/18 11:39, Rafael J. Wysocki wrote:
>> On Thu, Dec 13, 2018 at 10:54 AM Paul Menzel <pmenzel@molgen.mpg.de> wrote:
>>> On 12/13/18 00:06, Doug Smythies wrote:
>>>> On 2018.12.12 13:40 Paul Menzel wrote:
>>>>
>>>>> Using *powersave* as P-state selection algorithm, on an idle system
>>>>
>>>> Define "idle system".
>>>> If your computer is running a GUI, or is even a server without a GUI
>>>> but with many services running, then "idle" really isn't.
>>>> Below is from my test server, with many services disabled, so
>>>> "idle" really is quite "idle"
>>>>
>>>> doug@s15:~/temp$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
>>>> Busy%   Bzy_MHz PkgTmp  PkgWatt
>>>> 0.01    1608    27      3.71
>>>> 0.01    1619    27      3.71
>>>> 0.01    1600    28      3.71
>>>> 0.01    1600    28      3.70
>>>>
>>>> Note that p state 16 (1600 MHz) is the minimum for my older i7-2600k
>>>> processor.
>>>
>>> The thing is, on an Intel Kaby Lake laptop with Ubuntu 18.10 and GNOME
>>> running, it goes down to the lowest listed frequency.
>
> Checking the numbers again, I was mistaken. The lowest possible frequency
> of the Intel Kaby Lake i7-7500U in that laptop is 400 MHz, and it is
> going down to 600 MHz. Busy% from turbostat is 0.3 to 0.4.
>
>> Kaby Lake has hardware-managed P-states (HWP) which is a different mechanism.
>
> Isn’t HWP also available for the 6th generation?
>
>    $ dmesg | grep intel_pstate
>    [    2.092456] intel_pstate: Intel P-state driver initializing
>    [    2.094820] intel_pstate: HWP enabled

Yes, you have HWP. I do not have HWP. I don't think HWP or not is
particularly relevant to this discussion.

>>>>> Shouldn’t it go down until 800 MHz?
>>>>
>>>> We would need some actual busy information, turbostat is the
>>>> recommended tool, to know for sure.
>>>
>>> Here you go.
>>>
>>> ```
>>> tools/power/x86/turbostat> sudo ./turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
>>> Busy%    Bzy_MHz    PkgTmp    PkgWatt
>>> 3.59    1167    31    1.68
>>> 3.21    903    31    1.34
>>> 3.21    906    31    1.34
>>> 3.27    901    31    1.35
>>> 8.23    2715    30    2.32  ← stopping GDM (systemctl stop gdm)
>>> 2.95    915    30    1.18
>>> 2.91    906    30    1.18
>>> 2.92    903    30    1.17
>>> 2.90    900    29    1.17
>>> 2.89    903    29    1.18
>>> 2.91    903    30    1.18
>>> 2.89    903    29    1.18
>>> 2.89    900    29    1.18
>>> 2.90    903    30    1.18
>>> 2.90    903    29    1.17
>>> 2.90    903    29    1.17
>>> 2.90    900    29    1.16
>>> 2.90    903    29    1.14
>>> 2.90    903    28    1.11
>>> 2.90    903    29    1.10
>>> 2.91    900    29    1.16
>>> 2.91    903    29    1.14
>>> 2.90    903    29    1.12
>>> 2.90    903    29    1.16
>>> 2.90    900    28    1.17
>>> 2.92    903    29    1.16
>>> 2.90    903    29    1.16
>>> 2.90    903    29    1.16
>>> ```
>>>
>>> 800 MHz should be enough to keep GDM running, shouldn’t it?
>> 
>> Well, depending.
>> 
>>> Otherwise only SSH was running.
>> 
>> There obviously is something that causes it to stay at 900 MHz.

Agreed. Clearly some more stuff was using some CPU.
The resulting requested CPU frequency is also highly dependent on
the frequency of the load. Example:

doug@s15:~/csv-plot$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 60
Busy%   Bzy_MHz PkgTmp  PkgWatt
0.08    2567    27      3.77  <<< Note the high active CPU frequency with virtually no load.
0.01    1600    26      3.69
0.01    1600    27      3.70
0.83    1600    30      4.18
1.80    1600    30      4.59  <<< This load is at 435 Hertz work / sleep frequency
1.80    1600    32      4.59
0.74    3033    27      4.49  <<< This load is at 1 Hertz work / sleep frequency
0.76    3380    27      4.63
0.76    3384    28      4.62
0.38    3356    28      4.16
0.01    1615    28      3.71
0.01    1609    27      3.70

>
> It’s not obvious to me, but you have more experience. It’d expect
> to at least one core(?) to go down to 800 MHz and not all to stay
> at 900 MHz.

There is only PLL (Phase Locked Loop). The highest requested vote
for CPU frequency wins. CPUs in deep idle do not get a vote.

>> Please check max_perf_pct, min_perf_pct and num_pstates under
>> /sys/devices/system/cpu/intel_pstate/ .
>
>    /sys/devices/system/cpu/intel_pstate> cat max_perf_pct min_perf_pct num_pstates
>    100
>    20
>    33
>
>> Also cpuinfo_max_freq, cpuinfo_min_freq, scaling_max_freq,
>> scaling_min_freq under /sys/devices/system/cpu/cpufreq/policy0/ .
>
> /sys/devices/system/cpu/cpufreq/policy0> cat cpuinfo_{min,max}_freq scaling_{min,max}_freq
>    800000
>    4000000
>    800000
>    4000000
>
>> However, please note that Busy% of 3 isn't particularly low.
>
> Indeed. On the laptop it is around 0.3 to 0.4 even with GNOME
> running.
>
> So, to check if everything is working, I boot into initramfs
> and check the numbers there?
>

Myself, I think there is nothing wrong here. If you want
to pursue further, then my suggestion would be to disable
HWP and use trace and the intel_pstate_tracer.py utility
to fully analyze your "idle" system load and your systems
response to it.

... Doug



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: intel_pstate: Lowest frequency not reached with Intel i7-6700
  2018-12-13 10:39   ` Rafael J. Wysocki
@ 2018-12-13 12:41     ` Paul Menzel
  2018-12-13 16:36       ` Srinivas Pandruvada
  2018-12-13 16:21     ` Doug Smythies
  1 sibling, 1 reply; 7+ messages in thread
From: Paul Menzel @ 2018-12-13 12:41 UTC (permalink / raw)
  To: Rafael J. Wysocki
  Cc: Doug Smythies, linux-pm, LKML, Srinivas Pandruvada, Len Brown

[-- Attachment #1: Type: text/plain, Size: 3949 bytes --]

Dear Rafael,


On 12/13/18 11:39, Rafael J. Wysocki wrote:
> On Thu, Dec 13, 2018 at 10:54 AM Paul Menzel <pmenzel@molgen.mpg.de> wrote:

>> On 12/13/18 00:06, Doug Smythies wrote:
>>> On 2018.12.12 13:40 Paul Menzel wrote:
>>>
>>>> Using *powersave* as P-state selection algorithm, on an idle system
>>>
>>> Define "idle system".
>>> If your computer is running a GUI, or is even a server without a GUI
>>> but with many services running, then "idle" really isn't.
>>> Below is from my test server, with many services disabled, so
>>> "idle" really is quite "idle"
>>>
>>> doug@s15:~/temp$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
>>> Busy%   Bzy_MHz PkgTmp  PkgWatt
>>> 0.01    1608    27      3.71
>>> 0.01    1619    27      3.71
>>> 0.01    1600    28      3.71
>>> 0.01    1600    28      3.70
>>>
>>> Note that p state 16 (1600 MHz) is the minimum for my older i7-2600k
>>> processor.
>>
>> The thing is, on an Intel Kaby Lake laptop with Ubuntu 18.10 and GNOME
>> running, it goes down to the lowest listed frequency.

Checking the numbers again, I was mistaken. The lowest possible frequency
of the Intel Kaby Lake i7-7500U in that laptop is 400 MHz, and it is
going down to 600 MHz. Busy% from turbostat is 0.3 to 0.4.

> Kaby Lake has hardware-managed P-states (HWP) which is a different mechanism.

Isn’t HWP also available for the 6th generation?

    $ dmesg | grep intel_pstate
    [    2.092456] intel_pstate: Intel P-state driver initializing
    [    2.094820] intel_pstate: HWP enabled

>>>> Shouldn’t it go down until 800 MHz?
>>>
>>> We would need some actual busy information, turbostat is the
>>> recommended tool, to know for sure.
>>
>> Here you go.
>>
>> ```
>> tools/power/x86/turbostat> sudo ./turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
>> Busy%    Bzy_MHz    PkgTmp    PkgWatt
>> 3.59    1167    31    1.68
>> 3.21    903    31    1.34
>> 3.21    906    31    1.34
>> 3.27    901    31    1.35
>> 8.23    2715    30    2.32  ← stopping GDM (systemctl stop gdm)
>> 2.95    915    30    1.18
>> 2.91    906    30    1.18
>> 2.92    903    30    1.17
>> 2.90    900    29    1.17
>> 2.89    903    29    1.18
>> 2.91    903    30    1.18
>> 2.89    903    29    1.18
>> 2.89    900    29    1.18
>> 2.90    903    30    1.18
>> 2.90    903    29    1.17
>> 2.90    903    29    1.17
>> 2.90    900    29    1.16
>> 2.90    903    29    1.14
>> 2.90    903    28    1.11
>> 2.90    903    29    1.10
>> 2.91    900    29    1.16
>> 2.91    903    29    1.14
>> 2.90    903    29    1.12
>> 2.90    903    29    1.16
>> 2.90    900    28    1.17
>> 2.92    903    29    1.16
>> 2.90    903    29    1.16
>> 2.90    903    29    1.16
>> ```
>>
>> 800 MHz should be enough to keep GDM running, shouldn’t it?
> 
> Well, depending.
> 
>> Otherwise only SSH was running.
> 
> There obviously is something that causes it to stay at 900 MHz.

It’s not obvious to me, but you have more experience. It’d expect
to at least one core(?) to go down to 800 MHz and not all to stay
at 900 MHz.

> Please check max_perf_pct, min_perf_pct and num_pstates under
> /sys/devices/system/cpu/intel_pstate/ .

    /sys/devices/system/cpu/intel_pstate> cat max_perf_pct min_perf_pct num_pstates
    100
    20
    33

> Also cpuinfo_max_freq, cpuinfo_min_freq, scaling_max_freq,
> scaling_min_freq under /sys/devices/system/cpu/cpufreq/policy0/ .

/sys/devices/system/cpu/cpufreq/policy0> cat cpuinfo_{min,max}_freq scaling_{min,max}_freq
    800000
    4000000
    800000
    4000000

> However, please note that Busy% of 3 isn't particularly low.

Indeed. On the laptop it is around 0.3 to 0.4 even with GNOME
running.

So, to check if everything is working, I boot into initramfs
and check the numbers there?


Kind regards,

Paul


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 5174 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: intel_pstate: Lowest frequency not reached with Intel i7-6700
  2018-12-13  9:54 ` Paul Menzel
@ 2018-12-13 10:39   ` Rafael J. Wysocki
  2018-12-13 12:41     ` Paul Menzel
  2018-12-13 16:21     ` Doug Smythies
  0 siblings, 2 replies; 7+ messages in thread
From: Rafael J. Wysocki @ 2018-12-13 10:39 UTC (permalink / raw)
  To: Paul Menzel
  Cc: Doug Smythies, Linux PM, Linux Kernel Mailing List,
	Srinivas Pandruvada, Len Brown

On Thu, Dec 13, 2018 at 10:54 AM Paul Menzel <pmenzel@molgen.mpg.de> wrote:
>
> Dear Doug,
>
>
> Thank you for your reply.
>
> On 12/13/18 00:06, Doug Smythies wrote:
> > On 2018.12.12 13:40 Paul Menzel wrote:
> >
> >> Using *powersave* as P-state selection algorithm, on an idle system
> >
> > Define "idle system".
> > If your computer is running a GUI, or is even a server without a GUI
> > but with many services running, then "idle" really isn't.
> > Below is from my test server, with many services disabled, so
> > "idle" really is quite "idle"
> >
> > doug@s15:~/temp$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
> > Busy%   Bzy_MHz PkgTmp  PkgWatt
> > 0.01    1608    27      3.71
> > 0.01    1619    27      3.71
> > 0.01    1600    28      3.71
> > 0.01    1600    28      3.70
> >
> > Note that p state 16 (1600 MHz) is the minimum for my older i7-2600k
> > processor.
>
> The thing is, on an Intel Kaby Lake laptop with Ubuntu 18.10 and GNOME
> running, it goes down to the lowest listed frequency.

Kaby Lake has hardware-managed P-states (HWP) which is a different mechanism.

> >> Shouldn’t it go down until 800 MHz?
> >
> > We would need some actual busy information, turbostat is the
> > recommended tool, to know for sure.
>
> Here you go.
>
> ```
> tools/power/x86/turbostat> sudo ./turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
> Busy%    Bzy_MHz    PkgTmp    PkgWatt
> 3.59    1167    31    1.68
> 3.21    903    31    1.34
> 3.21    906    31    1.34
> 3.27    901    31    1.35
> 8.23    2715    30    2.32  ← stopping GDM (systemctl stop gdm)
> 2.95    915    30    1.18
> 2.91    906    30    1.18
> 2.92    903    30    1.17
> 2.90    900    29    1.17
> 2.89    903    29    1.18
> 2.91    903    30    1.18
> 2.89    903    29    1.18
> 2.89    900    29    1.18
> 2.90    903    30    1.18
> 2.90    903    29    1.17
> 2.90    903    29    1.17
> 2.90    900    29    1.16
> 2.90    903    29    1.14
> 2.90    903    28    1.11
> 2.90    903    29    1.10
> 2.91    900    29    1.16
> 2.91    903    29    1.14
> 2.90    903    29    1.12
> 2.90    903    29    1.16
> 2.90    900    28    1.17
> 2.92    903    29    1.16
> 2.90    903    29    1.16
> 2.90    903    29    1.16
> ```
>
> 800 MHz should be enough to keep GDM running, shouldn’t it?

Well, depending.

> Otherwise only SSH was running.

There obviously is something that causes it to stay at 900 MHz.

Please check max_perf_pct, min_perf_pct and num_pstates under
/sys/devices/system/cpu/intel_pstate/ .

Also cpuinfo_max_freq, cpuinfo_min_freq, scaling_max_freq,
scaling_min_freq under /sys/devices/system/cpu/cpufreq/policy0/ .

However, please note that Busy% of 3 isn't particularly low.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: intel_pstate: Lowest frequency not reached with Intel i7-6700
  2018-12-12 23:06 Doug Smythies
@ 2018-12-13  9:54 ` Paul Menzel
  2018-12-13 10:39   ` Rafael J. Wysocki
  0 siblings, 1 reply; 7+ messages in thread
From: Paul Menzel @ 2018-12-13  9:54 UTC (permalink / raw)
  To: Doug Smythies; +Cc: linux-pm, LKML, Srinivas Pandruvada, Len Brown

[-- Attachment #1: Type: text/plain, Size: 2209 bytes --]

Dear Doug,


Thank you for your reply.

On 12/13/18 00:06, Doug Smythies wrote:
> On 2018.12.12 13:40 Paul Menzel wrote:
> 
>> Using *powersave* as P-state selection algorithm, on an idle system
> 
> Define "idle system".
> If your computer is running a GUI, or is even a server without a GUI
> but with many services running, then "idle" really isn't.
> Below is from my test server, with many services disabled, so
> "idle" really is quite "idle"
> 
> doug@s15:~/temp$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
> Busy%   Bzy_MHz PkgTmp  PkgWatt
> 0.01    1608    27      3.71
> 0.01    1619    27      3.71
> 0.01    1600    28      3.71
> 0.01    1600    28      3.70
> 
> Note that p state 16 (1600 MHz) is the minimum for my older i7-2600k
> processor.

The thing is, on an Intel Kaby Lake laptop with Ubuntu 18.10 and GNOME
running, it goes down to the lowest listed frequency.

>> Shouldn’t it go down until 800 MHz?
> 
> We would need some actual busy information, turbostat is the
> recommended tool, to know for sure.

Here you go.

```
tools/power/x86/turbostat> sudo ./turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
Busy%    Bzy_MHz    PkgTmp    PkgWatt
3.59    1167    31    1.68
3.21    903    31    1.34
3.21    906    31    1.34
3.27    901    31    1.35
8.23    2715    30    2.32  ← stopping GDM (systemctl stop gdm)
2.95    915    30    1.18
2.91    906    30    1.18
2.92    903    30    1.17
2.90    900    29    1.17
2.89    903    29    1.18
2.91    903    30    1.18
2.89    903    29    1.18
2.89    900    29    1.18
2.90    903    30    1.18
2.90    903    29    1.17
2.90    903    29    1.17
2.90    900    29    1.16
2.90    903    29    1.14
2.90    903    28    1.11
2.90    903    29    1.10
2.91    900    29    1.16
2.91    903    29    1.14
2.90    903    29    1.12
2.90    903    29    1.16
2.90    900    28    1.17
2.92    903    29    1.16
2.90    903    29    1.16
2.90    903    29    1.16 
```

800 MHz should be enough to keep GDM running, shouldn’t it?
Otherwise only SSH was running.


Kind regards,

Paul


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 5174 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: intel_pstate: Lowest frequency not reached with Intel i7-6700
@ 2018-12-12 23:06 Doug Smythies
  2018-12-13  9:54 ` Paul Menzel
  0 siblings, 1 reply; 7+ messages in thread
From: Doug Smythies @ 2018-12-12 23:06 UTC (permalink / raw)
  To: 'Paul Menzel'
  Cc: linux-pm, 'LKML', 'Srinivas Pandruvada',
	'Len Brown',
	Doug Smythies

On 2018.12.12 13:40 Paul Menzel wrote:

> Using *powersave* as P-state selection algorithm, on an idle system

Define "idle system".
If your computer is running a GUI, or is even a server without a GUI
but with many services running, then "idle" really isn't.
Below is from my test server, with many services disabled, so
"idle" really is quite "idle"

doug@s15:~/temp$ sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,PkgTmp,PkgWatt --interval 15
Busy%   Bzy_MHz PkgTmp  PkgWatt
0.01    1608    27      3.71
0.01    1619    27      3.71
0.01    1600    28      3.71
0.01    1600    28      3.70

Note that p state 16 (1600 MHz) is the minimum for my older i7-2600k processor.

> Shouldn’t it go down until 800 MHz?

We would need some actual busy information, turbostat is the recommended tool,
to know for sure.

... Doug



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-12-13 16:36 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-12-12 21:40 intel_pstate: Lowest frequency not reached with Intel i7-6700 Paul Menzel
2018-12-12 23:06 Doug Smythies
2018-12-13  9:54 ` Paul Menzel
2018-12-13 10:39   ` Rafael J. Wysocki
2018-12-13 12:41     ` Paul Menzel
2018-12-13 16:36       ` Srinivas Pandruvada
2018-12-13 16:21     ` Doug Smythies

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).