I have Lenovo Ideapad 720s 14 with an Intel i7-8850U CPU, using Ubuntu 17.10 with kernel 4.13.0-31-generic. I use i7z to measure clock speed. My CPU refuses to boost above 1.8GHz (its base frequency), even on single-threaded workloads with plenty of thermal headroom. Its max Turbo speed is advertised as 4GHz.
It has no problem maintaining 1.8GHz when all four cores are active, albeit with more fan noise, so throttling is not an issue. Using all cores also gives a perfect 4x performance boost, so the clock speed measurements seem correct.
Here's the output from i7z when running a single-threaded workload:
True Frequency (without accounting Turbo) 1992 MHz
CPU Multiplier 20x || Bus clock frequency (BCLK) 99.60 MHz
Socket [0] - [physical cores=4, logical core918, max online cores ever=4]
TURBO ENABLED on 4 Cores, Hyper Threading ON 55
Max Frequency without considering Turbo 2091.60 MHz (99.60 x [21])
Max TURBO Multiplier (if Enabled) with 1/2/3/4 Cores is 40x/40x/37x/37x
Real Current Frequency 1339.86 MHz [99.60 x 13.45] (Max of below)
Core [core-id] :Actual Freq (Mult.)90.55 C0% Ha55(C1)% C3 % C6 % Temp VCore
Core 1 [0]: 1339.86 (13.45x) 3.48 95.7 0 2 48 0.6167
Core 2 [1]: 1796.17 MHz [99.55 x 18.04] (Max of below) 0 47 0.6165
Core 3 [2]: 1041.68 (10.46x) 2.08 88.4 0 10.5 47 0.6162
Core 4 [3]: 1796.17 (18.04x) 1 97.5 1 1 49 0.7679
1795.63 (18.04x) 1.37 97.1 0 1.66 47 0.7679
1795.79 (18.04x) 1.84 98.3 0 0 51 0.7679
1795.84 (18.04x) 1.64 96.5 1 1 47 0.7679
C0 = Processor running without halting
C1 = Processor running with halts (States >C0 are power saver modes with cores idling)
C3 = Cores running with PLL turned off and core cache turned off
C6, C7 = Everything in C3 + core state saved to last level cache, C7 is deeper than C6
Above values in table are in percentage over the last 1 sec
Temperatures are modest (Around 50C) and the fans aren't gong anywhere near full speed. Still, the cores don't ever try to boost above 1.8GHz. Turbo Boost works in Windows, although it behaves somewhat erratically there, if that's relevant.
lscpu | grep MHz output:
CPU MHz: 2000.000
CPU max MHz: 1800,0000
CPU min MHz: 400,0000
sudo lshw -c cpu output (some parts omitted):
*-cpu
description: CPU
product: Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
vendor: Intel Corp.
physical id: 4
bus info: cpu@0
version: Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz
serial: To Be Filled By O.E.M.
slot: U3E1
size: 1800MHz
capacity: 4005MHz
width: 64 bits
clock: 100MHz
Any help is appreciated.
EDIT: cat /sys/devices/system/cpu/intel_pstate/no_turbo output:
0