Как уменьшить нагрузку на процессор в Google Chrome?

50

Я начал использовать Google Chrome (в актуальном состоянии) в Windows 7 (все в актуальном состоянии) при чистой установке, которую я сделал несколько дней назад, и по сравнению с Firefox я вижу огромные скачки ЦП (до 100% загрузки ЦП) при открытии пустые вкладки. Я пытался отключить такие функции, как предикаты сети и т. Д. Безрезультатно.

Есть ли способ уменьшить загрузку ЦП Chrome?

Вот одна странная вещь, которую я заметил, которая беспокоит меня: когда я играю видео / аудио на YouTube (как во флэш-версии, так и в версии HTML5), когда я нажимаю кнопку «плюс» в верхней части, чтобы открыть несколько новых окон, это вызывает видео / аудио отставать. Я не испытываю ничего подобного при использовании Firefox. Самое странное, что это также не происходит, когда я открываю новые страницы в другом профиле Chrome или в приватном просмотре. Есть идеи, почему это происходит? Разве эти страницы не должны храниться в отдельных процессах? Почему разница между открытием их в другом профиле и в том же профиле?

Джейн Джонсон
источник
2
Какие-нибудь плагины установлены в Chrome?
Дэйв
7
Shift + ESC => Диспетчер задач для Chrome
ta.speot.is

Ответы:

48

Во-первых, проверьте, не являются ли это расширениями или плагинами, или какими-то фоновыми работниками, которые использует сайт (чтобы открыть Chrome Task Manager, нажмите Shift + Esc или Меню → Дополнительные инструменты → Диспетчер задач).

Если это не так, то я думаю, что это связано с аппаратным ускорением. Но обратите внимание, я не видел эту причину в течение многих лет, определенно не начиная с Windows 8.

Во-первых, отключите аппаратное ускорение внизу страницы основных настроек (нажмите Показать дополнительные настройки ... внизу chrome://settings, прокрутите до конца, снимите флажок Использовать аппаратное ускорение, если доступно ). Последние версии Chrome требуют перезагрузки, но по моему опыту эта опция применяется сразу, хотя бы частично.

Если замедления не исчезли даже после перезапуска Chrome, откройте chrome://flags(поместите это в адресную строку Chrome и нажмите Enter) и настройте следующее:

  • Отключить ускоренный 2D холст - Отключить
  • Растеризация GPU - Отключить
  • Аппаратно-ускоренное декодирование видео - отключено
  • Растеризатор нулевой копии - Отключить

(это было для Chrome 53.0.2785.89, в старых системах, где Chrome не обновляется, могут быть доступны другие параметры, например:

  • Отключить DirectWrite - включить
  • Включить растеризацию одной копии - отключено
  • Включить растеризацию без копирования - Отключить
  • Отключить аппаратно-ускоренное декодирование видео - Включить

)

затем нажмите Перезапустить сейчас в нижней части окна.

Если все станет хорошо (но, возможно, немного медленнее), вы можете переключать параметры по умолчанию на один, пока не найдете тот, который вызывает проблему.

(если вы не можете найти опцию в списке флагов, пропустите ее. Возможно, также посмотрите другие опции, касающиеся графического и аппаратного ускорения, и убедитесь, что ускорение HW и использование графического процессора отключены. Chrome получает обновления довольно часто, а флаги добавляются и удаляются почти в каждой версии).

Ответы на вопросы:

Есть ли способ уменьшить загрузку ЦП Chrome?

если эти пики вызваны собственным движком Chrome (например, JavaScript или HTML-парсер), то нет. Но, скорее всего, это расширения или глючные видеодрайверы (их функции используются для аппаратного ускорения).

когда я нажимаю кнопку «плюс» в верхней части окна, чтобы открыть несколько новых окон, происходит задержка видео / звука. <…> Есть идеи, почему это происходит?

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

Разве эти страницы не должны храниться в отдельных процессах?

они действительно сохраняются, но есть один основной процесс (для каждого профиля), который выводит информацию в окно. Если этот процесс по какой-то причине останавливается, обновления окна будут остановлены, и, похоже, Chrome не отвечает. Я предполагаю, что вывод звука также осуществляется посредством этого основного процесса, поэтому звук также отстает.

Вы можете проверить дерево процессов с помощью Process Explorer .

Почему разница между открытием их в другом профиле и в том же профиле?

Расширения и настройки подключаемых модулей являются индивидуальными для каждого профиля, а расширения отключаются по умолчанию в режиме инкогнито. Вот почему он может вести себя по-разному с разными профилями (даже с одним основным процессом Chrome).

LogicDaemon
источник
1
У меня была такая же проблема. После ответа LogicDaemon я зашел в chrome: // flags и начал включать и отключать значения по одному. Включение «Отключить DirectWrite», кажется, решило проблему для меня.
2
После включения аппаратного ускорения загрузка процессора снизилась. Все идет нормально. Благодарю.
Мукеш Чапагейн
@MukeshChapagain Вы имеете в виду, аппаратное ускорение было по умолчанию отключено для вас? Фактически аппаратное ускорение как раз для снижения нагрузки на процессор, и оно включено по умолчанию; но иногда это происходит наоборот из-за глючных видео драйверов.
LogicDaemon
Я думаю, что отключил это раньше, но я не помню почему.
Мукеш Чапагейн
Я знаю, что ОП спросил о Windows. Кто-нибудь знает, есть ли такие же флаги в Ubuntu 14.04 для Chrome 47? Я только вижу Disable accelerated 2D canvas, и Enable zero-copy rasterizer, но не Disable DirectWrite. Интересно, что Disable hardware-accelerated video decodeсуществует, но он говорит: «Извините, этот эксперимент недоступен на вашей платформе». Так почему я не вижу тот, что о DirectWrite? Возможно это было удалено за прошлые 2 года?
Тайлер Кольер
2

Сбросить Google Chrome:

  1. Нажмите Chrome Menu на панели инструментов, а затем нажмите «Настройки».

  2. Выберите «Показать дополнительные настройки» в нижней части страницы и нажмите «Сбросить настройки браузера».

  3. Нажмите «Сброс», чтобы восстановить настройки браузера по умолчанию.

Тайяб Ислам
источник
1

Уловка, которую я узнал из нескольких сайтов:

  • Используйте –-purge-memory-buttonв командной строке Chrome и нажмите Purge memoryв диспетчере задач Chrome, и это освободит память (если это возможно)

Очевидно, просто отключите расширения, и это также сэкономит вам память.

Кроме того, некоторые сайты упоминают FooTab , расширение, которое приостанавливает все остальные вкладки при запуске до загрузки.

boxspah
источник
0

Откройте chrome://flagsи найдите delegated rendererи посмотрите, можете ли вы включить флаг, чтобы включить делегированный рендер, он же Übercompositor. Вы также должны быть уверены, что ускоренное рендеринг включен, поскольку это зависит от графического процессора. Вы можете проверить это по chrome://gpuссылке.

Для этого процесс рендеринга пропускает этап компоновки и отправляет высокоуровневые команды рисования процессу браузера, объединяя его с собственным проходом компоновки. Это снижает частоту заполнения графического процессора и является отличным способом помочь снизить потребляемую мощность.

HarvesterX
источник
3
delegated rendererфлаг Android - на плакате четко указано, что он / она работает в Windows.
лук порей