Диспетчер задач показывает, какие процессы находятся в «фоновом модерируемом» режиме для экономии заряда батареи. Источник: 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)


  1. Plone
    19.04.2017 20:39
    +5

    Главная причина реализации этой функции — некоторые плохо спроектированные приложения (например, скрипты аналитики и javascript-реклама) потребляют много ресурсов CPU, хотя находятся в фоновом режиме.

    Сразу вспоминается Windows Update, из-за которого старые компьютеры после инсталляции вставали колом на сутки, пока не установятся последние обновления на данный момент.


  1. Labunsky
    19.04.2017 20:47

    Как могут стараются ребята, но даже 11% никак не скомпенсируют двухчасовой разрыв в жизни акб между виндой и какой-нибудь убунтой. Серьезно, раньше ведь в этом плане выигрывала, что с тех пор так поломать можно было?


    1. DaneSoul
      19.04.2017 22:24
      +2

      Не могу сказать что именно они поломали, но я окончательно ушел (изредка только для игр запускаю) с винды 10 на Linux Mint в том числе из-за того, что так и не смог контролировать, чем именно вот она сейчас сжирает все ресурсы и не дает мне нормально работать.
      Там какая-то тьма фоновых процессов, которые не возможно отключить (по крайней мере доступными настройками, без плясок с реестром) и которые не понятно что делают и когда запустятся и насколько долго.
      PS: Вин 10 была ОЕМ лицензия, вела себя так сразу же с чистовой установки с официального дистрибутива, то есть списать на пиратов или заражение никак не получится.


    1. qthree
      19.04.2017 23:16
      +3

      Самое главное это перезагрузки самостоятельные. Было уже пару раз что ЧПУ станок посреди ночи работать переставал, потому что винде обновление пришло.
      А еще на ноуте на линуксе блютус лучше работает чем на винде. Точнее сказать, блютус наушники на win10 у меня вообще не юзабельные, каждые несколько секунд соединение прерывается. А в линуксе все отлично работает из коробки.


      1. Iv38
        20.04.2017 01:51

        С блютусом в винде вообще беда какая-то. Сколько лет пользуюсь блютусными девайсами (в основном гарнитуры), все время страдаю. То соединение нестабильное, то пляски с бубном при соединении. Недавно ради интереса подключил новую гарнитуру в десятке, чтобы посмотреть, как она работает с двумя устройствами разом. Работает как заявлено. Ну и ладно, больше не использовал их совместно, нет необходимости. Но теперь каждый раз при выходе из сна, винда мне сообщает, что гарнитура подключена, хотя это не так.


      1. 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


        1. DrZlodberg
          20.04.2017 10:43

          Вот за это огромное спасибо! На работе очень любят устанавливать обновления в обед. Ну да, никто же не работает, и все задачи закрыты. Ах у тебя там отладка висит и открыта пара тонн логов с букмарками? Ну пофиг, твои проблемы. Обычно, конечно, спрашивает и даёт возможность отложить, но не всегда…


  1. redmanmale
    19.04.2017 21:59
    +1

    Почему бы не дать пользователю самому решать, какие процессы важные, а какие нет?


    1. C4ET4uK
      19.04.2017 22:23

      Так есть же.
      В конце концов, есть возможность исключать конкретные приложения из режима «фоновой модерации». Это делается через свойства батареи (Settings > System > Battery). В окне “Battery Usage by App” выбирается нужное приложение и настройка “Managed by Windows”? переводится в режим “Off”.


      1. redmanmale
        20.04.2017 16:57

        Хотелось бы иметь возможность не чёрного списка, а белого. Т.е. выбирать для каких процессов включать этот режим, а для остальных нет.


        1. SandroSmith
          21.04.2017 19:52

          ИМХО, как раз наоборот. В текущей реализации кейс такой — ой как хорошо, ноут долго живёт. Вот только плеер почему-то заикается. О, выключу ка я для него троттл.
          Вот так для всех важных задач поотключали и на выходе имеем максимально долгую жизнь батареи при отсутствии проблем с производительностью.
          В случае белого списка 90% людей не полезут его настраивать. А если и полезут, то начнётся «ой, а это мне надо, и это важно, и тут нельзя заглушать». Хотя возможно оно и в режиме троттлинга работало бы нормально.


    1. ploop
      19.04.2017 23:20
      +1

      Почему бы не дать пользователю самому решать, какие процессы важные, а какие нет?

      Таких пользователей (которые понимают что такое «процесс» и вообще что делает эта фигня), наверное, в районе 1% наберётся. А вот у кого жрётся батарея (кто это замечает) гораздо больше.
      То есть из коробки должно быть настроено всё более-менее нормально.


      1. Iv38
        20.04.2017 01:59
        +1

        Согласен. Даже скажу, что понимание происходящего не очень помогает выявить каким программам стоит жить в фоне, а какие стоит притормозить. Сложно так сразу оценить, что жрет сверх необходимого, а чему тротлинг противопоказан. Вот у меня MIUI на телефоне. Эта сборка Андроида известна своим параноидальным желанием все прибить из экономии. Есть возможность на это повлиять. Я понимаю, что происходит, но на определение оптимальной конфигурации у меня ушла пара месяцев. Хотелось бы более интеллектуальных механизмов именно со стороны ОС, но с возможностью вмешаться при необходимости.


        1. Isiirk
          20.04.2017 03:48

          Не знаю, я вот прочитал новость, все хорошо конечно, но у меня дома планшет на 10 винде, работает 10-12 часов без подзарядки, вроде и есть смысл в идее, но в автоматическом режиме… настраивать ради еще одного часа работы как то лениво…


        1. ploop
          20.04.2017 10:00

          от у меня MIUI на телефоне. <...> Я понимаю, что происходит, но на определение оптимальной конфигурации у меня ушла пара месяцев.
          Аналогично, эта же сборка и примерно тот же срок, пока постепенно её не настроил. Но аккум живёт реально долго, несколько дней при обычном использовании.


      1. DrZlodberg
        20.04.2017 10:50

        Ошиблись на пару порядков минимум. Ещё с досовых времён привычка чистить систему от всего лишнего. Но уже в 7 висит куча сервисов и программ, назначение которых узнать уже просто непонятно как. Вот висит десяток svchost и что? Кто из них за что отвечает и что делает? Сейчас чисто по процессам удаётся их количество удерживать в пределе 40± шт. Большая же часть людей вообще не в курсе про какие-то процессы.


        1. ilialin
          20.04.2017 12:33

          Вот висит десяток svchost и что? Кто из них за что отвечает и что делает?

          В диспетчере задач в десятке можно посмотреть за что отвечает каждый svchost. Но вот что делает «система и сжатая память» после перезагрузки такого, что минут 20 (!) не дает работать — вот это вопрос. Чем-то напоминает XP, которая вот уж вроде бы загрузилась, но на самом деле совсем нет.


          1. DrZlodberg
            20.04.2017 12:58

            Вот не буду я ради этого переходить на десятку, хотя и могу порадоваться за её пользователей. Впрочем, только до прочтения второго предложения.

            Да ладно, при Сталине такого ХР как раз тюнилась на ура и летала даже на нетбуках после этого. Не на современных, а на её ровесниках. С 7 уже начались проблемы в этом плане, хотя ещё можно жить. Что там дальше не знаю, пока 7ки хватает.


          1. SandroSmith
            21.04.2017 19:54

            А можно чуть подробнее насчёт «можно посмотреть»?


            1. ilialin
              21.04.2017 20:15
              +1

              Например, так:
              image


  1. VJean
    19.04.2017 23:15
    +8

    Microsoft обращается с призывом сообщать о ситуациях, когда Power Throttling сработал некорректно. Для этого нужно запустить инструмент обратной связи Feedback Hub и сообщить о проблеме в категории Power and Battery > Throttled Applications.
    Неужели собранной телеметрии не хватило?


    1. vita1ij
      21.04.2017 10:36

      >>собранной телеметрии
      Именно из-за телеметрии и убрали кнопку пуск, в добавок сделав метро систему на компе. Не, лучше уже самому написать — что хочешь получить от системы.


      1. Iv38
        22.04.2017 08:39

        Не понял в чем связь телеметрии с пуском и метро. Бред какой-то. Тем более, что пуск вернули еще в 8.1, а в 10 он был всегда. Метрошный же софт просто лучше заточен под управление пальцами. Ну и телеметрия есть и в Win7, где пуск классический, а метро не работает совсем.


  1. vasimv
    20.04.2017 03:49
    +1

    Соберут очередной урожай «у меня все работало, а вдруг перестало», так как у многих пользователей все-таки есть фоновые приложения важные.


    1. Garbus
      20.04.2017 05:02
      +2

      Еще не забываем вариант, когда «умная» система сама сожрет больше, чем сэкономит.


  1. dmitry_ch
    20.04.2017 09:38

    Наконец, через столько лет, эта простая мысль пришла кому-то в голову?


    1. isden
      20.04.2017 11:44

      Насколько помню, в макоси что-то такое уже давно есть.


      1. DrMephisto
        21.04.2017 00:03

        Есть ещё с 2013 года. Никаких настроек нет, просто работает, никому не мешает, заряд батарейки экономит.