Что такое throttling
Содержание:
- Что такое троттлинг процессора?
- Программы плохо работают в фоне на Windows 10
- Способы обнаружения
- Мониторинг рабочих частот видеокарты и процессора
- Как предотвратить троттлинг?
- Что делать и как убрать троттлинг процессора
- Как отключить функцию CPU Throttling
- Реализация Throttling и Debouncing
- Как проверить частоту работы и температуру
- Configuration
- Как отключить CPU Throttling с помощью ThrottleStop
- Для чего может понадобиться применять эти техники в коде?
Что такое троттлинг процессора?
Троттлинг (CPU Throttling) — защитный механизм, который срабатывает при достижении критической температуры и проявляется в резком падении тактовой частоты. В этом случае производительность чипсета резко уменьшается, а его температура снижается. В этот момент пользователь видит, что запущенное ресурсоемкое приложение начало подвисать, а смартфон — работать медленнее.
Порог срабатывания системы у разных аппаратов может быть различным. Для одних критическая температура — 45 градусов, для других — 55. Это зависит от качества и возможностей электронных компонентов гаджетов. У смартфонов и планшетов низкого качества перегрев происходит и при более низких показателях температуры, так как пассивное охлаждение в них может вообще отсутствовать.
Существуют приложения, которые позволяют протестировать устройство на предмет троллинга. Самое очевидное из них — CPU Throttling Test. При запуске оно определяют технические возможности процессора и задает ему максимальную нагрузку, имитируя длительную работу ресурсоемкой программы. После этого происходит мониторинг тактовой частоты и температуры, а затем фиксируется момент снижения производительности.
Программы плохо работают в фоне на Windows 10
Современные процессоры оснащены различными параметрами энергопотребления. Когда вы работаете с каким-то приложением, Windows обеспечивает вас максимально возможным количеством мощности. Когда же приложение «уходит в фон», система ограничивает ее активность, чтобы снизить нагрузку на процессор и уменьшить энергопотребление. Заметьте, что фоновый процесс не отключается совсем, а лишь начинает работать грубо говоря вполсилы. Эффективность фоновой работы меньше, но вместе с тем и меньше энергопотребление.
Используя регулировку мощности, Windows может автоматически определить, какие приложения вы активно используете, а какие процессы можно отметить как менее важные и немного обрезать им доступ к мощностям компьютера. Microsoft заявляет, что таким образом получается улучшить время автономной работы вплоть до 11%, что вполне недурно.
Проблема в том, что иногда система не совсем корректно определяет, какой процесс надо ограничивать
И приложение, оставленное в фоне для выполнения важной задачи, может внезапно перестать работать должным образом. Чтобы избежать подобных сценариев, Microsoft позволяет вам следить за состоянием регулировки мощности для каждого отдельного процесса и управлять им по своему усмотрению. Для справки: Power Throttling – это функция, для корректной работы которой нужен современный совместимый процессор
Не все процессоры поддерживают регулировку мощности, поэтому вы можете не найти части упомянутых в этой статье параметров на своем компьютере. На ПК с процессорами Intel Power Throttling поддерживается только в моделях с шестым поколением Intel Core Skylake, поскольку в них появилась функция Intel Speed Shift. Microsoft работает над тем, чтобы добавить поддержку других процессоров, но пока что об этом ничего не известно. Если в будущем появится поддержка CPU от других производителей, мы обновим эту статью
Для справки: Power Throttling – это функция, для корректной работы которой нужен современный совместимый процессор. Не все процессоры поддерживают регулировку мощности, поэтому вы можете не найти части упомянутых в этой статье параметров на своем компьютере. На ПК с процессорами Intel Power Throttling поддерживается только в моделях с шестым поколением Intel Core Skylake, поскольку в них появилась функция Intel Speed Shift. Microsoft работает над тем, чтобы добавить поддержку других процессоров, но пока что об этом ничего не известно. Если в будущем появится поддержка CPU от других производителей, мы обновим эту статью.
Чтобы проверить, к каким процессам применен режим регулировки мощности, откройте Диспетчер задач и перейдите на вкладку Подробности.
Если процессор вашего компьютера поддерживает функцию Power Throttling, соответствующий столбец с подробностями регулировки мощности отдельных процессов будет отображаться по умолчанию. Если его там нет, скорее всего процессор не поддерживает работу с Power Throttling. Быть может, что у вас современный процессор шестого поколения и выше, но вы все равно не видите нужный вам столбец. В таком случае нажмите правой кнопкой мыши по любому из заголовков столбцов и выберите Выбрать столбцы.
Появится небольшое окошко, в котором вам надо опуститься вниз и установить флажок возле Регулирование мощности. После этого в диспетчере задач будет отображаться дополнительный столбец, обозначающий, включена ли регулировка мощности для этого процесса или нет. На планшетах и ноутбуках часть процессов будет отображать включенное состояние регулировки мощности, а для других процессов этот режим будет отключен.
Чтобы проверить, как работает регулировка мощности, выберите приложение, для которого применен режим регулировки мощности. К примеру, браузер Google Chrome. Разверните его и вы увидите, что состояние регулировки мощности изменилось на Выключено. Затем сверните браузер, подождите пару секунд и Windows включит регулировку мощности для процессов chrome.exe. Если же все процессы отображаются в состоянии Выключено для Power Throttling, значит ваш процессор скорее всего не поддерживает эту функцию.
Способы обнаружения
В вопросе троттлинга не стоит ориентироваться на субъективные ощущения от работы компа, поскольку ПК может тормозить из-за проблем операционной системы или вирусов. Перед тем как грешить на процессор, стоит протестировать его. Сделать это можно, например, с помощью программы AIDA. В ней имеется вкладка «Сервис». Открываем ее, и выбираем тест стабильности. В левом верхнем углу будет меню стресс-тестов. Ставим 3 верхние галочки, этого достаточно для проверки чипа. Стартуем и смотрим на графики.
В верхнем графике AIDA по умолчанию показывает температуру ЦПУ. Программа быстро загрузит процессор по полной, это можно наблюдать на нижнем графике. Если с чипом порядок, под нагрузкой он не перегреется, надпись CPU Throttling останется зеленой. В противном случае эта надпись покраснеет, и чип «сбросит обороты». Тестировать нужно не 5-10, а хотя бы 15-20 минут.
Некоторые пользователи с недоверием относятся к AIDA, полагая, что программа не может по полной нагрузить процессор. Им можно предложить альтернативный вариант тестирования:
- использовать для загрузки чипа программу CPU-Z, IntelBurnTest или ОССТ;
- когда он наберет высокие частоты, параллельно запустить AIDA и посмотреть показатели ЦПУ.
Сброс частот — явление, присущее чипам обоих ведущих производителей. Пользователи сталкиваются с троттлингом как процессоров Intel, так и AMD. Это вполне логично, поскольку дросселирование обычно связано не с конструкцией ЦПУ, а с работой системы охлаждения.
Интересная статья: Что делать если ноутбук перегревается — 5 причин перегрева и варианты решения
Мониторинг рабочих частот видеокарты и процессора
Для мониторинга частот видеокарты удобней всего использовать утилиту MSI Afterburner. Ее вы можете найти в архиве по ссылкам выше (скачать / скачать).
Устанавливаем и запускаем данную утилиту:
В окне слева отображены температура графического чипа, частота ядра, шейдеров и памяти. Именно эта информация нам необходима. Сворачиваем MSI Afterburner.
Для мониторинга частоты работы процессора можно использовать утилиту RMClock. Ее вы также можете найти в архиве по ссылкам выше. Запускаем данную утилиту и переходим на вкладку мониторинга:
Тут также отображены в виде графиков частоты работы ядер процессора (внизу кнопочки для их переключения), загрузка процессора, множитель процессора, а также температура. Эту утилиту также сворачиваем.
Замечание: поскольку утилита RMClock уже длительное время не обновляется, то могут возникнуть проблемы с ее корректной работой с новыми процессорами. В качестве альтернативы можно использовать утилиту TMonitor.
К сожалению, утилита TMonitor не умеет строить красивые графики с рабочими частотами, но зато умеет вести лог. Для старта записи лога нужно выбрать в меню: Start Recording
Для остановки есть пункт Stop Recording:
Информация о частотах записывается в файл в подпапке logs:
В том файле содержаться значение частоты для всех ядер процессора:
При желании в том же Excel можно построить графики частоты.
Важное замечание: Еще раз напомню, что утилитой TMonitor стоит пользоваться только если у вас плохо работает RMClock. Также запускаем утилиту HWMonitor. Она есть в архиве по ссылкам выше
Данная утилита позволяет фиксировать максимальные значения температур видеокарты, процессора и прочих компонент
Она есть в архиве по ссылкам выше. Данная утилита позволяет фиксировать максимальные значения температур видеокарты, процессора и прочих компонент
Также запускаем утилиту HWMonitor. Она есть в архиве по ссылкам выше. Данная утилита позволяет фиксировать максимальные значения температур видеокарты, процессора и прочих компонент.
Важное замечание: как альтернативу утилите HWMonitor можно использовать Open Hardware Monitor. Ключевым преимуществом данной утилиты является возможность строить графики температур, отображать максимальные частоты и степень загрузки различных компонент, а также выводить информацию о частотах, температурах и загрузке в системном трее возле часов и на Рабочем столе. Подробней о данной утилите вы можете узнать здесь: Диагностика ноутбука с помощью Open Hardware Monitor
Подробней о данной утилите вы можете узнать здесь: Диагностика ноутбука с помощью Open Hardware Monitor.
Ну что ж. Три утилиты свернуты и работают. Теперь нужно запустить вашу игр и поиграть до того момента, когда появятся те самые периодические подтормаживания. После этого выходим их игры и смотрим на показания утилит:
Здесь нам нужно посмотреть падала ли частота работы видеочипа и видеопамяти во время тех самых тормозов или нет. Если графики частоты ровные, то это значит, что с видеокартой все в порядке и она работала как и должна. Смотрим теперь что у нас с процессором:
Ровный график свидетельствует о том, что процессор не понижал свою частоту во время игры. Так в общем и должно быть. Если он все же понижал свою частоту, то значит или он перегревался и срабатывал тротлинг, или система сама понижала его частоту.
Ну и рассмотрим максимальные температуры:
Если темперы высокие (условно говоря, выше 90-95 градусов), то это уже повод для беспокойства. Как это все исправить сказано в данном руководстве: Охлаждение ноутбука.
Как предотвратить троттлинг?
Этот вопрос актуальнее предыдущего, поскольку, по идее, комп должен нормально работать с настройками BIOS по умолчанию. Троттлинг обычно связан с недостаточным охлаждением. Чтобы процессор не перегревался нужно:
Периодически чистить системный блок от пыли, при необходимости менять термопасту. Лэптопы реже нуждаются в чистке, но производителям компактных моделей сложнее обустроить мощную систему охлаждения, поэтому троттлинг процессора тонкого ноутбука — довольно частое явление
Решить проблему порой удается покупкой подставки под лэптоп, оснащенной одним или несколькими вентиляторами.
Обратить внимание на работу вентилятора ЦПУ. Может, он гудит, шумит, еле крутится? Тогда стоит подумать о замене недорогой детали на новую.
Вернуть BIOS на изначальные настройки
Если вы экспериментировали с параметрами, от которых зависит работа чипа, возможно, именно это стало причиной перегрева.
Гоняете комп на пределе возможностей, пытаетесь отдыхать за играми, которые он еле тянет? Не удивляйтесь троттлингу процессора или видеокарты. Решить проблему можно путем апгрейда ПК или покупкой игрового компьютера, железо которого заточено под максимальные нагрузки.
Еще один вариант — андервольтинг (снижение вольтажа процессора). Однако этот способ подходит не для всех ЦПУ.
Есть еще такое понятие, как троттлинг смартфонов. Многие производители телефонов, рекламируя современные модели, утверждают, что они по мощности не уступают компьютерам. Это не корректное сравнение, но оно говорит о высокой производительности комплектующих смартфонов. Троттлинг для них — нормальное явление. Избежать его поможет покупка охлаждающей подставки.
Модернизируем охлаждение лэптопа: Как улучшить охлаждение ноутбука — 5 способов
Что делать и как убрать троттлинг процессора
Отключать троттлинг стоит только в том случае, если вы абсолютно уверены в необходимости такого шага. Если с блоком питания или подачей тока что-то не так, процессор, лишенный защиты, может сгореть. Чтобы выключить функцию, придется задействовать стороннюю программу ThrottleStop. Её нельзя назвать простой в использовании, но она эффективна. Скачайте ПО с сайта разработчика и запустите – установка не требуется. Далее появится окно с многочисленными настройками: они подбираются в зависимости от типа процессора и производителя ноутбука. Для техники фирмы Dell предусмотрен отдельный раздел BD PROCHOT – уберите с него метку, а также не забудьте включить постоянное действие программы через кнопку Turn On и Save, чтобы настройки сохранились. Отключить троттлинг процессора Intel и других можно через опции Clock Modulation, Chipset Modulation, Set Multiplier, Turbo Boost или C1E. Остановимся подробно на каждой из них:
- Clock Modulation, Chipset Modulation помогут ограничить троттлинг, если он инициирован непосредственно CPU или Motherboard: исправив значения, вы добьетесь повышения продуктивности. Посмотрите, что показывает столбец Mod в общем формуляре: везде должно быть число 100. Если нет, выставьте слева, напротив названий параметров, показатели в 100%, и проблема исчезнет.
- Set Multiplier позволяет вручную настроить нужные показатели мощности процессора. Здесь нас интересует пункт «Множитель» — выставьте его на 80-90%, чтобы производительность была достаточно высокой, но не максимальной. Отметка в 100% может привести к перегреву.
- Turbo Boost помогает не всегда, но может периодически увеличивать частоту CPU, когда есть такая необходимость, например, во время использования ресурсоемких программ. Если вы не хотите кардинально менять показатели производительности, попробуйте включить эту функцию и поработать – возможно, её будет достаточно.
- C1E – опция, которая должна снижать производительность только в режиме ожидания, когда вы не пользуетесь ноутбуком, но иногда она работает некорректно и распространяется даже на период функционирования. Попробуйте её отключить – иногда это решает проблему.
Как отключить функцию CPU Throttling
Функция защиты от перегрева CPU Throttling – это проблема, с которой сталкиваются владельцы ноутбуков, купившие новый блок питания вместо фирменного. ПК вдруг начинает работать значительно хуже даже при небольших нагрузках. Далее вы прочтёте, как вернуть его к нормальному состоянию.
Настройка троттлинга процессора.
Что такое CPU Throttling Overheating Detected
CPU Throttling – функция снижения температуры ПК: за счёт троттлинга уменьшается частота работы процессора и удается избежать перегрева. Такой механизм предусмотрен на некоторых ноутбуках, чтобы уберечь их от поломки. Сообщение с текстом: «CPU Throttling Overheating Detected» («Обнаружен перегрев») появляется при подключении неоригинального блока питания, однако помните, что это может не соответствовать действительности. Даже если вы приобрели блок питания, отвечающий всем техническим требованиям и не угрожающий процессору, такое уведомление может возникнуть. Эту функцию можно отключить, но вначале все-таки стоит проверить блок питания:
- Сравните данные нового блока питания с оригинальным: все ли показатели совпадают. Мощность, напряжение и сила тока должны быть абсолютно идентичными. При малейшем несоответствии лучше отказаться от использования блока питания.
- Убедитесь в его исправности, а также в том, что в вашем доме нет неполадок с электричеством.
- Проверьте, не забит ли ноутбук изнутри пылью: возможно, проблема не в блоке питания, а в настоящем перегреве.
На всякий случай пропылесосьте вентиляционное отверстие ноутбука или распылите в него сжатый воздух из баллончика, чтобы исключить повышение температуры процессора.
Что делать и как убрать троттлинг процессора
Отключать троттлинг стоит только в том случае, если вы абсолютно уверены в необходимости такого шага. Если с блоком питания или подачей тока что-то не так, процессор, лишенный защиты, может сгореть. Чтобы выключить функцию, придется задействовать стороннюю программу ThrottleStop. Её нельзя назвать простой в использовании, но она эффективна. Скачайте ПО с сайта разработчика и запустите – установка не требуется. Далее появится окно с многочисленными настройками: они подбираются в зависимости от типа процессора и производителя ноутбука. Для техники фирмы Dell предусмотрен отдельный раздел BD PROCHOT – уберите с него метку, а также не забудьте включить постоянное действие программы через кнопку Turn On и Save, чтобы настройки сохранились. Отключить троттлинг процессора Intel и других можно через опции Clock Modulation, Chipset Modulation, Set Multiplier, Turbo Boost или C1E. Остановимся подробно на каждой из них:
- Clock Modulation, Chipset Modulation помогут ограничить троттлинг, если он инициирован непосредственно CPU или Motherboard: исправив значения, вы добьетесь повышения продуктивности. Посмотрите, что показывает столбец Mod в общем формуляре: везде должно быть число 100. Если нет, выставьте слева, напротив названий параметров, показатели в 100%, и проблема исчезнет.
- Set Multiplier позволяет вручную настроить нужные показатели мощности процессора. Здесь нас интересует пункт «Множитель» – выставьте его на 80-90%, чтобы производительность была достаточно высокой, но не максимальной. Отметка в 100% может привести к перегреву.
- Turbo Boost помогает не всегда, но может периодически увеличивать частоту CPU, когда есть такая необходимость, например, во время использования ресурсоемких программ. Если вы не хотите кардинально менять показатели производительности, попробуйте включить эту функцию и поработать – возможно, её будет достаточно.
- C1E – опция, которая должна снижать производительность только в режиме ожидания, когда вы не пользуетесь ноутбуком, но иногда она работает некорректно и распространяется даже на период функционирования. Попробуйте её отключить – иногда это решает проблему.
Реализация Throttling и Debouncing
Давайте посмотрим, как можно реализовать простую функцию с троттлингом в JavaScript. Использовать её будем так:
// regular call to function handleEventelement.on(‘event’, handleEvent);// throttle handleEvent so it gets called only once every 2 seconds (2000 ms)element.on(‘event’, throttle(handleEvent, 2000));
Отметим следующие моменты:
- Наша функция будет принимать два параметра: функцию для троттлинга вызовов и интервал задержки (в миллисекундах).
- Троттлинг-функция должна возвращать функцию. Эта функция вызывается при срабатывании события. Именно эта функция отслеживает вызовы функций и решает, следует ли вызывать исходную функцию.
- Чтобы отслеживать время последнего вызова функции, мы будем использовать особенность функций в JavaScript, которые являются по сути обычными объектами и могут иметь свойства. Мы можем использовать свойство lastCall, чтобы записывать время последнего вызова функции.
- Как определить, следует ли вызывать исходную функцию? Есть два сценария: 1. это был первый вызов, 2. время троттлинга истекло с момента последнего вызова функции.
Учитывая всё это, вот что мы получим (с примером использования):
function throttle(f, t) { return function (args) { let previousCall = this.lastCall; this.lastCall = Date.now(); if (previousCall === undefined // function is being called for the first time || (this.lastCall — previousCall) > t) { // throttle time has elapsed f(args); } }}let logger = (args) => console.log(`My args are ${args}`);// throttle: call the logger at most once every two secondslet throttledLogger = throttle(logger, 2000); throttledLogger();throttledLogger();throttledLogger();throttledLogger();throttledLogger();// «My args are 1, 2, 3» — logged only once
Далее, простая debouncing функция, которая будет использоваться так:
// regular call to function handleEventelement.on(‘event’, handleEvent);// debounce handleEvent so it gets called after calls have stopped for 2 seconds (2000 ms)element.on(‘event’, debounce(handleEvent, 2000));
Обратите внимание на следующие моменты:
- Debouncing подразумевает ожидание. Мы должны ждать, пока вызовы функции прекратятся на заданное время. Для реализации ожидания мы используем setTimeout.
- Так как мы не можем просто сказать функции: «подожди, пока вызовы не прекратятся», мы будем использовать setTimeout. Каждый раз, когда функция вызывается, мы планируем вызов исходной функции, если в течении определённого времени не было вызовов. Если вызовы были до истечения заданного нами времени, то мы отменяем ранее запланированный вызов и переносим его.
- Ещё раз, для отслеживания вызовов мы будем использовать свойства функции. Помимо lastCall, мы будем хранить свойство lastCallTimer. Так мы придержим значение, возвращаемое setTimeout, и сможем отменить таймер (с помощью clearTimeout), если это необходимо.
Финальный результат:
function debounce(f, t) { return function (args) { let previousCall = this.lastCall; this.lastCall = Date.now(); if (previousCall && ((this.lastCall - previousCall) <= t)) { clearTimeout(this.lastCallTimer); } this.lastCallTimer = setTimeout(() => f(args), t); }}let logger = (args) => console.log(`My args are ${args}`); // debounce: call the logger when two seconds have elapsed since the last calllet debouncedLogger = debounce(logger, 2000);debouncedLogger();debouncedLogger();debouncedLogger();// «My args are 7, 8, 9» — logged after two seconds
Библиотека lodash может обеспечить более мощную throttle и debounce функциональность. С ней вы можете делать так:
element.on(‘scroll’, _.throttle(handleScroll, 100));$(window).on(‘resize’, _.debounce(function() {}, 100));
Если вам не нужна библиотека целиком, можно импортировать только субмодули:
const debounce = require(‘lodah/debounce’);const throttle = require(‘lodash/throttle’);// and use like before:element.on(‘scroll’, throttle(handleScroll, 100));$(window).on(‘resize’, debounce(function() {}, 100));
Как проверить частоту работы и температуру
Вы можете использовать такие приложения, как HWMonitor, GPU-Z или CPU-Z. В случае с ноутбуками, первым признаком проблем является, например, включение системы охлаждения в состоянии покоя, чего раньше не было.
В случае видеокарт, проще всего запустить тест GPU-Z, но, к сожалению, он не даёт полной уверенности в правильности действий. Однако, если в тесте температуры быстро растут (например, выше 90 градусов), а скорость ещё быстрее падает – это признак того, что у вас проблема.
Более реальным испытанием будет, например, запуск требовательной игры в окне и мониторинг температур и частоты работы CPU и GPU с помощью приложения диагностики.
Configuration
The configuration has moved to . Makefile does not overwrite your previous config file, so you need to manually check for differences in config file structure when updating the tool. If you want to overwrite the config with new defaults just issue . There exist two profiles and and the tool can be totally disabled by setting in the section. Undervolt is applied if any voltage plane in the config file (section UNDERVOLT) was set. Notice that the offset is in mV and only undervolting (i.e. negative values) is supported.
All fields accept floating point values as well as integers.
My T480s with i7-8550u is stable with:
Как отключить CPU Throttling с помощью ThrottleStop
Самое простое решение — приобретение оригинального блока питания, но если это не возможно, можно обойти проблему другим способом.
С помощью программы ThrottleStop можно отключить функцию понижения частоты процессора в ноутбуках. Это довольно сложный инструмент, и работает не только в случае понижения производительности из-за питания.
ThrottleStop позволяет отключить другие функции экономии энергии, влияющие на снижение мощности процессора.
Скачайте программу с сайта techpowerup com. ThrottleStop не требует установки, достаточно распаковать из архива в любое выбранное место на диске. После извлечения запустите файл exe.
При запуске программа предупреждает, что все изменения делаете под свою ответственность.
Когда загрузится появиться главное окно, которое может быть непонятным для большинства пользователей. ThrottleStop не с той когорты программ, где есть один выключатель, чтобы отключить throttling. Разные производители используют свои методы, чтобы снизить производительность процессора, поэтому придется немного поэкспериментировать.
С левой стороны находятся варианты, помогающие отключить функцию. Справа, найдем параметры, которые отвечают за мониторинг текущего состояния процессора. Рассмотрим самые важные опции, которые могут оказаться полезными.
Для ноутбуков Dell
Владельцам ноутбуков Dell, в которых есть CPU Throttling, нужно обратить внимание на пункт BD PROCHOT. Этот пункт влияет на функцию снижения частоты на ноутбуках этой марки, когда подключаем неоригинальный блок питания
Снимите флажок и ничего больше не меняйте, просто нажмите кнопку «Turn On» (активировать ThrottleStop) и «Save» (для записи изменений).
Для остальных ноутбуков и ПК
Что касается остальных устройств с установленным CPU Throttling, есть масса других вариантов, с помощью которых можно отключить действие автоматического снижения частоты ЦП, например, для экономии энергии.
Clock Modulation и Chipset Modulation – это два очень важных параметра, когда дело доходит до ограничения троттлинга. Снижение частоты ЦП может контролироваться непосредственно процессором или чипсетом на материнской плате.
Чтобы проверить, что процессор ограничен таким способом, обратите внимание на правую сторону таблицы. Если в столбце Mod значение ниже 100, то ноутбук использует эти параметры для ограничения мощности процессора
Установите флажки слева от параметров Clock Modulation / Chipset Modulation и модуляцию на 100% — это заставит работать процессор на полную мощность.
Set Multiplier позволяет изменить параметры множителя – можно вручную установить на больше или меньше быстродействие ЦП. Например, если в процессоре частота системной шины FSB установлена на 100 МГц, а множитель на 33, это означает, что ЦП работает с тактовой частотой 33х100 МГц (3,3 ГГц).
Можно вручную установить множитель на максимальное значение, поддерживаемое процессором, чтобы установить постоянную скорость работы ЦП на максимальной мощности (помните, что это увеличит потребление энергии и повысит температуру процессора). Можно установить меньше (80-90%), чтобы ЦП работал непрерывно на одном уровне мощности, который достаточно высок, но не максимальный, чтобы не перегреть устройство.
Здесь также находятся переключатели, позволяющие отключить Turbo Boost («Disable Turbo») или «C1E» (различные состояния питания ЦП, связанные с экономией энергопотребления).
Turbo Boost позволяет в процессорах Intel Core временно увеличивать мощность, когда устройство обнаруживает в этом необходимость (например, запущена игра).
C1E – это состояние питания и эта функция слабо документирована Интелом – в некоторых случаях ее деактивация может отключить снижение частоты и throttling.
После отключения некоторых опций нажмите кнопку «Turn on», чтобы активировать выбранные значения и «Save» для записи изменений. Затем перезапустите компьютер.
Если указанные варианты, такие как принудительная модуляция на 100%, ручная установка множителя до максимального значения или отключение Turbo и C1E не помогли отключить Throttling, то есть еще дополнительные параметры. Полный список дополнительных опций вместе с детальным описанием можно найти на форуме NotebookReview в официальной теме ThrottleStop.
Краткое описание
Рекомендации как избавиться от периодических подтормаживаний в играх и прочих приложениях. Если у вас ноутбук просто зависает или вообще отключается, то переходите сразу к данному руководству: Охлаждение ноутбука.
Для чего может понадобиться применять эти техники в коде?
Предположим, у вас есть событие «С», которое, при срабатывании, вызывает функцию «Ф». Обычно «Ф» вызывается при каждом срабатывании «С», и это нормально.
Но что, если «С» срабатывает слишком часто, например 200 раз в секунду? Если «Ф» выполняет какие-то простые вычисления, то и это нормально. Но если «Ф» выполняет «дорогие» операции, например вызов внешнего API, тяжёлые вычисления или сложные манипуляции с DOM, то вы захотите ограничить частоту вызова «Ф», чтобы не было проседания производительности. Другой случай, когда стоит ограничить частоту вызовов, — это если какой-либо другой компонент приложения зависит от результата «Ф».
Давайте рассмотрим два распространённых случая, когда используют троттлинг и debouncing.
Видео игры
В экшен играх приходиться нажимать кнопки с высокой частотой для выполнения какого-либо действия (стрельба, удар). Как правило игроки нажимают кнопки намного чаще чем это требуется, вероятно, увлекаясь происходящим. Таким образом игрок может нажать на кнопку «удара» 10 раз в течение пяти секунд, но персонаж делает не более одного удара в секунду. В этом случае троттлинг события «удар», позволяет игнорировать повторные нажатия кнопки в течение секунды.
Автозаполнение
В строке поиска часто реализуют автозаполнение для текущего ввода пользователя. Иногда предлагаемые варианты замены извлекаются из серверной части, через API (например, на Google Maps).
Google карты с реализацией debouncing
Предположим, вы вводите в строку поиска «Greenwich». API автозаполнения будет вызываться при изменении текста в строке поиска. Если бы не debouncing, вызов API выполнялся бы после каждой введённой буквы, даже если вы печатаете очень быстро.
У такого подхода есть две основные проблемы:
- Набирая слово «Green» пользователь будет получать предложения автозаполнения сначала для «G», потом для «Gr», «Gre» и т.д. Если пользователь печатает очень быстро, то это будет сбивать его с толку.
- Нет гарантии, что API запросы будут возвращены в том порядке, в котором они были отправлены. Например, запрос автозаполнения для «Gre» может вернуться после запроса для «Green». Это означает, что пользователь сначала увидит обновлённый список (предложения для «Green»), который затем будет заменён устаревшим (предложения для «Gre»).
Поэтому имеет смысл «притормозить» поиск. Debouncing функции автозаполнения на одну секунду позволит ограничить запросы, пока пользователь не перестанет печатать.
В конце концов троттлинг можно представить так: «Привет, похоже ты начал что-то делать, если ты хочешь продолжить, — нет проблем, я пока не буду обращать на это внимание». А debouncing, так: «Похоже ты ещё не закончил, ― продолжай, а я подожду»