Диспетчер задач показывает, какие процессы находятся в «фоновом модерируемом» режиме для экономии заряда батареи. Источник: Microsoft
В январе 2017 года с билдом Insider Preview 15002 компания Microsoft начала эксперимент с частичным подавлением активности фоновых приложений. По результатам эксперимента на ограниченном количестве устройств выяснилось, что функция Power Throttling позволяет экономить до 11% заряда аккумулятора в наиболее экстремальных случаях. Поэтому сейчас решено сделать эту функцию частью билда 16176 в Insider Preview. Этот билд вышел несколько дней назад, он стал первым обновлением после выхода Creators Update.
В режиме Power Throttling фоновые процессы выполняются в самом энергосберегающем режиме. Процесс идёт, но с минимальными затратами энергии. Microsoft говорит, что с января внесла улучшения в Power Throttling, прислушавшись к пожеланиям пользователей, так что эта функция должна помочь экономить энергию на многих компьютерах.
Для работы функции Power Throttling задействуются аппаратные возможности современных процессоров, а именно — технология Speed Shift. Пока функция поддерживается только на процессорах Intel Core 6-го поколения и более поздних. Это Skylake и Kaby Lake. Microsoft сейчас работает, чтобы расширить поддержку и на другие процессоры, это может произойти в ближайшие несколько месяцев.
На практике энергосбережение в фоновых процессах требует внедрения «сложной системы обнаружения» на уровне операционной системы, объясняет Microsoft в официальном блоге. Windows нужно определить, какие из фоновых приложений важны для пользователя, а какие — не важны. Например, к важным фоновым приложениям относится воспроизведение музыки, а также некоторые другие важные задачи. Для большинства приложений «умное детектирование» работает хорошо, но на некоторых приложениях может глючить. Microsoft обращается с призывом сообщать о ситуациях, когда Power Throttling сработал некорректно. Для этого нужно запустить инструмент обратной связи Feedback Hub и сообщить о проблеме в категории Power and Battery > Throttled Applications.
Кроме того, можно самостоятельно контролировать агрессивность подавления фоновых приложений через ползунок.
Там этот режим можно сделать более агрессивным по сравнению с рекомендуемым значением (Battery Saver) или отключить вовсе (Best Perfomance).
В конце концов, есть возможность исключать конкретные приложения из режима «фоновой модерации». Это делается через свойства батареи (Settings > System > Battery). В окне “Battery Usage by App” выбирается нужное приложение и настройка “Managed by Windows”? переводится в режим “Off”.
При работе ноутбука от сети функция Power Throttling не активируется. В связи с этим Microsoft рекомендует запускать бенчмарки, например, только в режиме работы от сети для получения объективного результата измерений производительности.
Разработчикам Microsoft обещает внести изменения в API, чтобы отдельные приложения имели прямой доступ к настройкам экономии электроэнергии при работе в фоновом режиме.
Так выглядел диспетчер задач в Insider Preview (билд 15002)
Примечание. В окончательной функции Power Throttling в диспетчер задач внесено изменение: для фоновых приложений теперь вместо термина «Приглушено» (Throttled) используется фраза «Модерируется в фоне» (Background Moderated).
Интересно, что функция Power Throttling в Windows 10 чем-то напоминает функции экономии заряда батарей в современных браузерах. Там это тоже осуществляется за счёт «приглушения» работы фоновых вкладок — скриптов, флеша и т. д. Например, браузер Chrome с предпоследней версии Chrome 57 активно подавляет работу фоновых вкладок. Там это делается чисто на программном уровне. У каждого компонента WebView есть бюджет (в секундах) для работы таймеров в фоновом режиме. Таймер не может запуститься, если бюджет отрицательный. После выполнения таймера его время работы вычитается из бюджета. Бюджет автоматически пополняется со временем (на 0,01 с бюджета с каждой секундой реального времени).
Подавление активности фоновых вкладок в Chrome 57
Главная причина реализации этой функции — некоторые плохо спроектированные приложения (например, скрипты аналитики и javascript-реклама) потребляют много ресурсов CPU, хотя находятся в фоновом режиме. Это негативно отражается на производительности браузера и потребляет энергию аккумулятора на мобильных устройствах.
На программном уровне работает и функция подавления фоновых приложений App Nap в macOS. В macOS таким способом можно даже увеличить производительность активного приложения.
Комментарии (28)
Labunsky
19.04.2017 20:47Как могут стараются ребята, но даже 11% никак не скомпенсируют двухчасовой разрыв в жизни акб между виндой и какой-нибудь убунтой. Серьезно, раньше ведь в этом плане выигрывала, что с тех пор так поломать можно было?
DaneSoul
19.04.2017 22:24+2Не могу сказать что именно они поломали, но я окончательно ушел (изредка только для игр запускаю) с винды 10 на Linux Mint в том числе из-за того, что так и не смог контролировать, чем именно вот она сейчас сжирает все ресурсы и не дает мне нормально работать.
Там какая-то тьма фоновых процессов, которые не возможно отключить (по крайней мере доступными настройками, без плясок с реестром) и которые не понятно что делают и когда запустятся и насколько долго.
PS: Вин 10 была ОЕМ лицензия, вела себя так сразу же с чистовой установки с официального дистрибутива, то есть списать на пиратов или заражение никак не получится.
qthree
19.04.2017 23:16+3Самое главное это перезагрузки самостоятельные. Было уже пару раз что ЧПУ станок посреди ночи работать переставал, потому что винде обновление пришло.
А еще на ноуте на линуксе блютус лучше работает чем на винде. Точнее сказать, блютус наушники на win10 у меня вообще не юзабельные, каждые несколько секунд соединение прерывается. А в линуксе все отлично работает из коробки.Iv38
20.04.2017 01:51С блютусом в винде вообще беда какая-то. Сколько лет пользуюсь блютусными девайсами (в основном гарнитуры), все время страдаю. То соединение нестабильное, то пляски с бубном при соединении. Недавно ради интереса подключил новую гарнитуру в десятке, чтобы посмотреть, как она работает с двумя устройствами разом. Работает как заявлено. Ну и ладно, больше не использовал их совместно, нет необходимости. Но теперь каждый раз при выходе из сна, винда мне сообщает, что гарнитура подключена, хотя это не так.
Taciturn
20.04.2017 08:03+5Всем страдальцам от автоматических перезагрузок:
gpedit.msc — Локальный компьютер\Административные шаблоны\Компоненты Windows\Центр обновления Windows:
Не выполнять автоматическую перезагрузку при автоматической установке обновлений, если в системе работают пользователи
Или через реестр:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU]
"NoAutoRebootWithLoggedOnUsers"=dword:00000001
DrZlodberg
20.04.2017 10:43Вот за это огромное спасибо! На работе очень любят устанавливать обновления в обед. Ну да, никто же не работает, и все задачи закрыты. Ах у тебя там отладка висит и открыта пара тонн логов с букмарками? Ну пофиг, твои проблемы. Обычно, конечно, спрашивает и даёт возможность отложить, но не всегда…
redmanmale
19.04.2017 21:59+1Почему бы не дать пользователю самому решать, какие процессы важные, а какие нет?
C4ET4uK
19.04.2017 22:23Так есть же.
В конце концов, есть возможность исключать конкретные приложения из режима «фоновой модерации». Это делается через свойства батареи (Settings > System > Battery). В окне “Battery Usage by App” выбирается нужное приложение и настройка “Managed by Windows”? переводится в режим “Off”.redmanmale
20.04.2017 16:57Хотелось бы иметь возможность не чёрного списка, а белого. Т.е. выбирать для каких процессов включать этот режим, а для остальных нет.
SandroSmith
21.04.2017 19:52ИМХО, как раз наоборот. В текущей реализации кейс такой — ой как хорошо, ноут долго живёт. Вот только плеер почему-то заикается. О, выключу ка я для него троттл.
Вот так для всех важных задач поотключали и на выходе имеем максимально долгую жизнь батареи при отсутствии проблем с производительностью.
В случае белого списка 90% людей не полезут его настраивать. А если и полезут, то начнётся «ой, а это мне надо, и это важно, и тут нельзя заглушать». Хотя возможно оно и в режиме троттлинга работало бы нормально.
ploop
19.04.2017 23:20+1Почему бы не дать пользователю самому решать, какие процессы важные, а какие нет?
Таких пользователей (которые понимают что такое «процесс» и вообще что делает эта фигня), наверное, в районе 1% наберётся. А вот у кого жрётся батарея (кто это замечает) гораздо больше.
То есть из коробки должно быть настроено всё более-менее нормально.Iv38
20.04.2017 01:59+1Согласен. Даже скажу, что понимание происходящего не очень помогает выявить каким программам стоит жить в фоне, а какие стоит притормозить. Сложно так сразу оценить, что жрет сверх необходимого, а чему тротлинг противопоказан. Вот у меня MIUI на телефоне. Эта сборка Андроида известна своим параноидальным желанием все прибить из экономии. Есть возможность на это повлиять. Я понимаю, что происходит, но на определение оптимальной конфигурации у меня ушла пара месяцев. Хотелось бы более интеллектуальных механизмов именно со стороны ОС, но с возможностью вмешаться при необходимости.
Isiirk
20.04.2017 03:48Не знаю, я вот прочитал новость, все хорошо конечно, но у меня дома планшет на 10 винде, работает 10-12 часов без подзарядки, вроде и есть смысл в идее, но в автоматическом режиме… настраивать ради еще одного часа работы как то лениво…
ploop
20.04.2017 10:00от у меня MIUI на телефоне. <...> Я понимаю, что происходит, но на определение оптимальной конфигурации у меня ушла пара месяцев.
Аналогично, эта же сборка и примерно тот же срок, пока постепенно её не настроил. Но аккум живёт реально долго, несколько дней при обычном использовании.
DrZlodberg
20.04.2017 10:50Ошиблись на пару порядков минимум. Ещё с досовых времён привычка чистить систему от всего лишнего. Но уже в 7 висит куча сервисов и программ, назначение которых узнать уже просто непонятно как. Вот висит десяток svchost и что? Кто из них за что отвечает и что делает? Сейчас чисто по процессам удаётся их количество удерживать в пределе 40± шт. Большая же часть людей вообще не в курсе про какие-то процессы.
ilialin
20.04.2017 12:33Вот висит десяток svchost и что? Кто из них за что отвечает и что делает?
В диспетчере задач в десятке можно посмотреть за что отвечает каждый svchost. Но вот что делает «система и сжатая память» после перезагрузки такого, что минут 20 (!) не дает работать — вот это вопрос. Чем-то напоминает XP, которая вот уж вроде бы загрузилась, но на самом деле совсем нет.DrZlodberg
20.04.2017 12:58Вот не буду я ради этого переходить на десятку, хотя и могу порадоваться за её пользователей. Впрочем, только до прочтения второго предложения.
Да ладно,при Сталине такогоХР как раз тюнилась на ура и летала даже на нетбуках после этого. Не на современных, а на её ровесниках. С 7 уже начались проблемы в этом плане, хотя ещё можно жить. Что там дальше не знаю, пока 7ки хватает.
VJean
19.04.2017 23:15+8Microsoft обращается с призывом сообщать о ситуациях, когда Power Throttling сработал некорректно. Для этого нужно запустить инструмент обратной связи Feedback Hub и сообщить о проблеме в категории Power and Battery > Throttled Applications.
Неужели собранной телеметрии не хватило?vita1ij
21.04.2017 10:36>>собранной телеметрии
Именно из-за телеметрии и убрали кнопку пуск, в добавок сделав метро систему на компе. Не, лучше уже самому написать — что хочешь получить от системы.Iv38
22.04.2017 08:39Не понял в чем связь телеметрии с пуском и метро. Бред какой-то. Тем более, что пуск вернули еще в 8.1, а в 10 он был всегда. Метрошный же софт просто лучше заточен под управление пальцами. Ну и телеметрия есть и в Win7, где пуск классический, а метро не работает совсем.
dmitry_ch
20.04.2017 09:38Наконец, через столько лет, эта простая мысль пришла кому-то в голову?
isden
20.04.2017 11:44Насколько помню, в макоси что-то такое уже давно есть.
DrMephisto
21.04.2017 00:03Есть ещё с 2013 года. Никаких настроек нет, просто работает, никому не мешает, заряд батарейки экономит.
Plone
Сразу вспоминается Windows Update, из-за которого старые компьютеры после инсталляции вставали колом на сутки, пока не установятся последние обновления на данный момент.