Я читал статью в Forbes , в которой говорится, что Google Chrome может разряжать аккумулятор моего ноутбука, потому что он переводит систему в режим, в котором используется тактовая частота 1 мс вместо 16 мс, и при этом расходуется на 25% больше энергии аккумулятора. (И, по-видимому, он не выходит из этого режима, как предполагалось, до тех пор, пока вы не закроете приложение, а не когда вы закончите с высокопроизводительными единицами работы.)
Я понимаю, что более короткий интервал времени означает большее переключение контекста, что приведет к увеличению использования ЦП, что, в свою очередь, приведет к увеличению потребления батареи. Но, похоже, нигде не получено, что он использует колоссальные 25% больше от этой настройки.
Есть ли доказательства того, что уменьшение продолжительности временного интервала приводит к резкому увеличению использования батареи, о котором говорится в статье?
Есть ли доказательства того, что уменьшение продолжительности временного интервала приводит к резкому увеличению использования батареи, о котором говорится в статье?
Да .
Цитируя технический документ , выпущенный Microsoft как часть их документации для разработчиков оборудования , Таймеры, Разрешение таймера и Разработка эффективного кода :
Если интервал системного таймера уменьшен до меньшего, чем значение по умолчанию, в том числе когда приложение вызывает
timeBeginPeriod
с разрешением 1 мс, состояния простоя с низким энергопотреблением неэффективны для снижения энергопотребления системы, и срок службы батареи системы снижается.Время автономной работы системы может сократиться на 25 процентов в зависимости от аппаратной платформы. Это связано с тем, что переходы в состояния с низким энергопотреблением и из них требуют затрат энергии. Следовательно, вход в состояние с низким энергопотреблением и выход из него без проведения минимального времени в состояниях с низким энергопотреблением может быть более дорогостоящим, чем если бы система просто оставалась в состоянии с высоким энергопотреблением.
По сообщению авторитетного глобального компьютерного журнала PC world , ежемесячно издаваемого IDG, Google подтвердил наличие проблемы:
В любом случае, новые отчеты наконец-то привлекли внимание Google. В заявлении для PCWorld компания отметила, что ошибка была назначена внутри компании и что команда Chrome работает над ее исправлением, но только после того, как Моррис обратил внимание на проблему. Давний отчет об ошибке был поднят до первого приоритета.
Подробнее:
Об ошибке, упомянутой в статье Forbe , сообщается в проекте Chrome с открытым исходным кодом Chromium с 29 сентября 2012 года. Эта ошибка набрала 7445 голосов программистов.
Судя по всему, браузер Google увеличивает частоту системных часов до 1 мс, как только вы запускаете браузер, и сохраняет ее до полного закрытия. Это означает, что центральный процессор системы должен переключаться в «режим пробуждения» 1000 раз за 1 секунду, чтобы выполнять задачи, связанные с Chrome.
Значение Microsoft по умолчанию для Windows — 15,6 мс , что означает, что компьютер будет разбужен 64 раза за 1 секунду. Поскольку Chrome устанавливает разрешение системных часов на 1,0 мс , это приводит к значительному энергопотреблению, поскольку это происходит гораздо чаще, чем обычно наблюдается с настройкой Microsoft по умолчанию.
Короче говоря, Chrome пробуждает процессор 1000 раз в секунду вместо 64 раз в секунду .
Родился
и31415