Как включить Turbo-Boost

У меня Dell XPS 13 (для разработчиков), купленный несколько лет назад под Ubuntu 12.04

Я обновился до Ubuntu 16.04 и с тех пор заметил, что мой компьютер стал работать медленнее, чем раньше, при выполнении некоторых тяжелых задач.

Я также заметил, что мой компьютер стал намного менее шумным при выполнении тяжелых задач, и похоже, что мой I7 Turbo Boost не срабатывает.

Отправка работы на 4 проц, турбостат показывает:

 CPU Avg_MHz   %Busy Bzy_MHz TSC_MHz
   -     602  100.00     603    2595
   0     611  100.00     611    2597
   1     594  100.00     595    2594
   2     610  100.00     612    2594
   3     594  100.00     595    2594

Я не эксперт, но похоже, что турбо не работает правильно?

Как я должен заставить это работать? Все, что я нашел в Интернете, говорит только об использовании турбостата, но на самом деле не помогает решить проблему.

Любая идея?

я использую burnK7 генерировать загрузку процессора. Обратите внимание, что в начале Bzy_MHz колонка приближается к 3 ГГц, но затем стабилизируется около 1 ГГц, это нормально?

Мой процессор: процессор Intel® Core™ i7-3687U @ 2,10 ГГц × 4

Ubuntu: Ubuntu 16.04.1 LTS 64 bits

Под большой нагрузкой i7z отображает:

В нем говорится, что турбо-режим включен, но частота очень низкая, и я уверен, что для той же задачи (здесь мы собираем код Scala) компьютер был очень шумным / быстрым для той же задачи перед обновлением Ubuntu. Почему это происходит?

Я выключил thermald с sudo service thermald stop

Также получите следующий вывод от cpupower:

cpupower frequency-info
analyzing CPU 0:
  driver: intel_pstate
  CPUs which run at the same hardware frequency: 0
  CPUs which need to have their frequency coordinated by software: 0
  maximum transition latency: 0.97 ms.
  hardware limits: 800 MHz - 3.30 GHz
  available cpufreq governors: performance, powersave
  current policy: frequency should be within 1.98 GHz and 1.98 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.10 GHz.
  boost state support:
    Supported: yes
    Active: yes
    25500 MHz max turbo 4 active cores
    25500 MHz max turbo 3 active cores
    25500 MHz max turbo 2 active cores
    25500 MHz max turbo 1 active cores

Я заметил, что frequency should be within 1.98 GHz and 1.98 GHz. на самом деле диапазон движущейся цели, и может зависеть thermald начать / остановки.

Теперь я получаю странный результат:

  current policy: frequency should be within 3.30 GHz and 3.30 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 800 MHz.

Обратите внимание, что значения в файлах, как /sys/devices/system/cpu/cpu0/cpufreq/scaling_min_freq кажется, постоянно меняется


Некоторые дополнительные выходы турбостата.

Первый находится в начале фазы загрузки. В начале частота высокая.

$ sudo turbostat --debug sleep 10
turbostat version 4.8 26-Sep, 2015 - Len Brown <lenb@kernel.org>
CPUID(0): GenuineIntel 13 CPUID levels; family:model:stepping 0x6:3a:9 (6:58:9)
CPUID(6): APERF, DTS, PTM, EPB
RAPL: 3855 sec. Joule Counter Range, at 17 Watts
cpu2: MSR_PLATFORM_INFO: 0x80815f0011a00
8 * 100 = 800 MHz max efficiency frequency
26 * 100 = 2600 MHz base frequency
cpu2: MSR_IA32_POWER_CTL: 0x0014005d (C1E auto-promotion: DISabled)
cpu2: MSR_TURBO_RATIO_LIMIT: 0x1f1f1f21
31 * 100 = 3100 MHz max turbo 4 active cores
31 * 100 = 3100 MHz max turbo 3 active cores
31 * 100 = 3100 MHz max turbo 2 active cores
33 * 100 = 3300 MHz max turbo 1 active cores
cpu2: MSR_CONFIG_TDP_NOMINAL: 0x00000015 (base_ratio=5)
cpu2: MSR_CONFIG_TDP_LEVEL_1: 0x00080070 (PKG_MIN_PWR_LVL1=0 PKG_MAX_PWR_LVL1=0 LVL1_RATIO=8 PKG_TDP_LVL1=112)
cpu2: MSR_CONFIG_TDP_LEVEL_2: 0x001a00c8 (PKG_MIN_PWR_LVL2=0 PKG_MAX_PWR_LVL2=0 LVL2_RATIO=10 PKG_TDP_LVL2=200)
cpu2: MSR_CONFIG_TDP_CONTROL: 0x00000000 ( lock=0)
cpu2: MSR_TURBO_ACTIVATION_RATIO: 0x00000014 (MAX_NON_TURBO_RATIO=20 lock=0)
cpu2: MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008405 (UNdemote-C3, UNdemote-C1, demote-C3, demote-C1, locked: pkg-cstate-limit=5: pc7s)
cpu0: MSR_IA32_ENERGY_PERF_BIAS: 0x00000006 (balanced)
cpu0: MSR_RAPL_POWER_UNIT: 0x000a1003 (0.125000 Watts, 0.000015 Joules, 0.000977 sec.)
cpu0: MSR_PKG_POWER_INFO: 0x00000088 (17 W TDP, RAPL 0 - 0 W, 0.000000 sec.)
cpu0: MSR_PKG_POWER_LIMIT: 0x800080fa00dc80c8 (locked)
cpu0: PKG Limit #1: ENabled (25.000000 Watts, 28.000000 sec, clamp DISabled)
cpu0: PKG Limit #2: ENabled (31.250000 Watts, 0.000977* sec, clamp DISabled)
cpu0: MSR_PP0_POLICY: 0
cpu0: MSR_PP0_POWER_LIMIT: 0x80000000 (locked)
cpu0: Cores Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP1_POLICY: 0
cpu0: MSR_PP1_POWER_LIMIT: 0x80000000 (locked)
cpu0: GFX Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_IA32_TEMPERATURE_TARGET: 0x00691200 (105 C)
cpu0: MSR_IA32_PACKAGE_THERM_STATUS: 0x880a0908 (95 C)
cpu0: MSR_IA32_THERM_STATUS: 0x880c0008 (93 C +/- 1)
cpu2: MSR_IA32_THERM_STATUS: 0x880a0008 (95 C +/- 1)
    Core     CPU Avg_MHz   %Busy Bzy_MHz TSC_MHz     SMI  CPU%c1  CPU%c3  CPU%c6  CPU%c7 CoreTmp  PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc7 PkgWatt CorWatt GFXWatt
       -       -    1900   79.17    2406    2594       0   15.12    0.11    0.00    5.60      93      93    0.00    0.00    0.00    0.00   10.51    6.86    0.37
       0       0    1893   78.90    2405    2594       1   16.29    0.16    0.00    4.65      89      93    0.00    0.00    0.00    0.00   10.51    6.86    0.37
       0       1    2016   84.01    2406    2594       1   11.18
       1       2    1982   82.61    2405    2594       1   10.78    0.06    0.00    6.55      93
       1       3    1710   71.16    2408    2594       1   22.23
10.001067 sec

Второй через некоторое время под нагрузкой: снижение частоты:

$ sudo turbostat --debug sleep 10
turbostat version 4.8 26-Sep, 2015 - Len Brown <lenb@kernel.org>
CPUID(0): GenuineIntel 13 CPUID levels; family:model:stepping 0x6:3a:9 (6:58:9)
CPUID(6): APERF, DTS, PTM, EPB
RAPL: 3855 sec. Joule Counter Range, at 17 Watts
cpu2: MSR_PLATFORM_INFO: 0x80815f0011a00
8 * 100 = 800 MHz max efficiency frequency
26 * 100 = 2600 MHz base frequency
cpu2: MSR_IA32_POWER_CTL: 0x0014005d (C1E auto-promotion: DISabled)
cpu2: MSR_TURBO_RATIO_LIMIT: 0x1f1f1f21
31 * 100 = 3100 MHz max turbo 4 active cores
31 * 100 = 3100 MHz max turbo 3 active cores
31 * 100 = 3100 MHz max turbo 2 active cores
33 * 100 = 3300 MHz max turbo 1 active cores
cpu2: MSR_CONFIG_TDP_NOMINAL: 0x00000015 (base_ratio=5)
cpu2: MSR_CONFIG_TDP_LEVEL_1: 0x00080070 (PKG_MIN_PWR_LVL1=0 PKG_MAX_PWR_LVL1=0 LVL1_RATIO=8 PKG_TDP_LVL1=112)
cpu2: MSR_CONFIG_TDP_LEVEL_2: 0x001a00c8 (PKG_MIN_PWR_LVL2=0 PKG_MAX_PWR_LVL2=0 LVL2_RATIO=10 PKG_TDP_LVL2=200)
cpu2: MSR_CONFIG_TDP_CONTROL: 0x00000000 ( lock=0)
cpu2: MSR_TURBO_ACTIVATION_RATIO: 0x00000014 (MAX_NON_TURBO_RATIO=20 lock=0)
cpu2: MSR_NHM_SNB_PKG_CST_CFG_CTL: 0x1e008405 (UNdemote-C3, UNdemote-C1, demote-C3, demote-C1, locked: pkg-cstate-limit=5: pc7s)
cpu0: MSR_IA32_ENERGY_PERF_BIAS: 0x00000006 (balanced)
cpu0: MSR_RAPL_POWER_UNIT: 0x000a1003 (0.125000 Watts, 0.000015 Joules, 0.000977 sec.)
cpu0: MSR_PKG_POWER_INFO: 0x00000088 (17 W TDP, RAPL 0 - 0 W, 0.000000 sec.)
cpu0: MSR_PKG_POWER_LIMIT: 0x800080fa00dc80c8 (locked)
cpu0: PKG Limit #1: ENabled (25.000000 Watts, 28.000000 sec, clamp DISabled)
cpu0: PKG Limit #2: ENabled (31.250000 Watts, 0.000977* sec, clamp DISabled)
cpu0: MSR_PP0_POLICY: 0
cpu0: MSR_PP0_POWER_LIMIT: 0x80000000 (locked)
cpu0: Cores Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_PP1_POLICY: 0
cpu0: MSR_PP1_POWER_LIMIT: 0x80000000 (locked)
cpu0: GFX Limit: DISabled (0.000000 Watts, 0.000977 sec, clamp DISabled)
cpu0: MSR_IA32_TEMPERATURE_TARGET: 0x00691200 (105 C)
cpu0: MSR_IA32_PACKAGE_THERM_STATUS: 0x881b0908 (78 C)
cpu0: MSR_IA32_THERM_STATUS: 0x881e0008 (75 C +/- 1)
cpu2: MSR_IA32_THERM_STATUS: 0x881b0008 (78 C +/- 1)
    Core     CPU Avg_MHz   %Busy Bzy_MHz TSC_MHz     SMI  CPU%c1  CPU%c3  CPU%c6  CPU%c7 CoreTmp  PkgTmp Pkg%pc2 Pkg%pc3 Pkg%pc6 Pkg%pc7 PkgWatt CorWatt GFXWatt
       -       -      30    2.79    1091    2594       0    6.92    0.30    0.00   89.99      70      71    1.60    0.03    1.48   47.85    3.65    0.71    0.29
       0       0      22    1.97    1133    2594       0    6.34    0.12    0.00   91.58      70      71    1.60    0.03    1.48   47.85    3.65    0.71    0.29
       0       1      38    3.09    1224    2594       0    5.22
       1       2      25    2.45    1016    2594       0    8.67    0.47    0.00   88.40      70
       1       3      37    3.67    1006    2594       0    7.45
10.001501 sec

В начале фазы загрузки кажется, что мои процессоры могут сильно нагреться, около 105°, что является температурой перехода процессоров, а затем система не позволяет им готовить самостоятельно и значительно снижает частоту до минимума.

Я бы хотел иметь менее нагруженный процессор при высокой нагрузке, а когда он нагревается, уменьшать процессор значительно меньше. Это возможно?


Связанные проблемы, которые я открыл для решения своей проблемы (может содержать дополнительную информацию, не упомянутую здесь, которая может быть полезна)

2 ответа

Интересно, блокируется ли процессор силовым зажимом? Если вы запускаете top, вы можете увидеть работающие потоки kidle_inject, если это так, то процессор блокируется по мощности в качестве теплового ограничения, поэтому вы увидите очевидное 100% использование в сочетании с низкой частотой процессора.

У меня была та же проблема с моим i5.Check утилита вашего драйвера. 16.04 нужны дополнительные драйверы для процессоров Intel. я думаю, установка intel-microcode сделает все хорошо (после перезагрузки ofc). Позвольте мне знать, как это получается.

Другие вопросы по тегам