Настройка Google Chrome на максимальную производительность. GPU hardware acceleration.
Последние годы браузеры стали чуть ли не самым часто используемым софтом. Оно и понятно, все больше информации можно почерпнуть в интернете, и все меньше шансов найти актуальную информацию в книгах. По актуальности книги сначала отставали на пол года-год, а последнее время отставание растет. Уже 5-7 лет — не предел того, насколько устарела информация в только что изданных книгах.
Раньше этим грешили ВУЗы, теперь же это докатилось до offline источников информации.
А если мы так много времени проводим в браузере, то было бы неплохо использовать его возможности по максимуму.
Так как мне больше всего импонирует Chrome, то приведу наиболее подходящие в плане скорости работы настройки именно для него.
Настройки Google Chrome больше всего напоминают матрешку. Есть настройки для всех , и настройки для желающих большего .
Сразу оговорюсь, что данные настройки подходят только для физических ПК. Попытка применения таких настроек на виртуальных машинах в которые не проброшена физическая видеокарта — не приведут ни к чему хорошему, а могут сделать chrome неработоспособным.
Настройки для всех
Кликаем мышкой на три точки справа вверху окна chrome и выбираем настройки. В первую очередь нас интересует вкладка «система».
Следует выключить верхний пункт, чтобы браузер полностью закрывался, когда вы хотите его закрыть. Иначе он продолжит функционировать в фоне, потребляя память и ресурсы процессора. Это может немного замедлить его повторный запуск, но за то все будет честно. Закрыл — так закрыл.
Далее следует включить второй пункт, чтобы браузер использовал видеокарту для ускорения отображения сайтов. Вернее, хотя бы попытался использовать. В большинстве случаев этого оказывается мало, но включить необходимо.
Далее идем к вкладке «Конфиденциальность и безопасность», в пункт «Безопасность».
Тут следует отключить защиту:
Не стоит пугаться. Это отключит встроенный в chrome антивирус. В Windows 10/11 есть собственный, а Linux. Вы сначала попробуйте его чем-то заразить. Без специальных знаний и нарушения всех принципов безопасной работы в ОС это еще никому не удавалось.
Отключение «Защиты» chrome существенно уменьшит нагрузку на процессор компьютера и ускорит работу браузера.
Теперь можно перезапустить chrome и посмотреть, что получилось в результате, перейдя по ссылке chrome://gpu
Не стоит расстраиваться, если на появившейся странице не так много зеленых строк, как на моем скриншоте в самом начале статьи. Мы только начали. Если же там у вас сплошные ярко зеленые строки — вам повезло. Это редкость.
Все дело в том, что chrome вовсе не стремится работать на пределе его возможностей, эффективно используя имеющиеся ресурсы компьютера. Изначально chrome настроен так, чтобы просто стабильно работать на максимуме из возможных конфигураций компьютеров. То есть, большая часть возможностей этого браузера по дефолту отключено.
Потому переходим к более серьезным настройкам.
Настройки для желающих большего
Переходим по ссылке chrome://flags
Вы можете, конечно, самостоятельно почитать про все настройки, что можно поменять на этой странице, но это будет стоить вам большого количества времени и нервов. Не сказать, чтобы эти экспериментальные настройки были хорошо где-то описаны. Свою подборку подходящих я собирал долго. Настроек много. Я дам их списком.
Включить все оптом не выйдет, потому самый простой путь: вбивать по одной в строку поиска вверху страницы и приводить в соответствие с данным списком:
Override software rendering list
Overrides the built-in software rendering list and enables GPU-acceleration on unsupported system configurations. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#ignore-gpu-blocklist
Enabled
WebRTC PipeWire support
When enabled the WebRTC will use the PipeWire multimedia server for capturing the desktop content on the Wayland display server. – Linux
#enable-webrtc-pipewire-capturer
Enabled
Smooth Scrolling
Animate smoothly when scrolling page content. – Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#smooth-scrolling
Enabled
Experimental QUIC protocol
Enable experimental QUIC protocol support. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-quic
Disabled
GPU rasterization
Use GPU to rasterize web content. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-gpu-rasterization
Enabled
Automatic detection of WebUSB-compatible devices
When enabled, the user will be notified when a device which advertises support for WebUSB is connected. Disable if problems with USB devices are observed when the browser is running. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#enable-webusb-device-detection
Enabled
WebGL Developer Extensions
Enabling this option allows web applications to access WebGL extensions intended only for use during development time. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-webgl-developer-extensions
Enabled
WebGL Draft Extensions
Enabling this option allows web applications to access the WebGL extensions that are still in draft status. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-webgl-draft-extensions
Enabled
Zero-copy rasterizer
Raster threads write directly to GPU memory associated with tiles. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-zero-copy
Enabled
Allow invalid certificates for resources loaded from localhost.
Allows requests to localhost over HTTPS even when an invalid certificate is presented. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#allow-insecure-localhost
Enabled
Toggle hardware accelerated H.264 video encoding for Cast Streaming
The default is to allow hardware H.264 encoding when recommended for the platform. If enabled, hardware H.264 encoding will always be allowed when supported by the platform. If disabled, hardware H.264 encoding will never be used. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#cast-streaming-hardware-h264
Enabled
Toggle hardware accelerated VP8 video encoding for Cast Streaming
The default is to allow hardware VP8 encoding when recommended for the platform. If enabled, hardware VP8 encoding will always be allowed when supported by the platform (regardless of recommendation). If disabled, hardware VP8 encoding will never be used. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#cast-streaming-hardware-vp8
Enabled
Enable AV1 video encoding for Cast Streaming
Offers the AV1 video codec when negotiating Cast Streaming, and uses AV1 if selected for the session. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#enable-cast-streaming-av1
Enabled
Enable VP9 video encoding for Cast Streaming
Offers the VP9 video codec when negotiating Cast Streaming, and uses VP9 if selected for the session. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#enable-cast-streaming-vp9
Enabled
Tab Scrolling
Enables tab strip to scroll left and right when full. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#scrollable-tabstrip
Enabled
Enable pixel canvas recording
Pixel canvas recording allows the compositor to raster contents aligned with the pixel and improves text rendering. This should be enabled when a device is using fractional scale factor. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#enable-pixel-canvas-recording
Enabled
Parallel downloading
Enable parallel downloading to accelerate download speed. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-parallel-downloading
Enabled
WebGPU Developer Features
Enables web applications to access WebGPU features intended only for use during development. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-webgpu-developer-features
Enabled
Back-forward cache
If enabled, caches eligible pages after cross-site navigations.To enable caching pages on same-site navigations too, choose ‘enabled same-site support’. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#back-forward-cache
Enabled force caching all pages (experimental)
Enables Out-of-Process Printer Drivers
Enables printing interactions with the operating system to be performed out-of-process. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#enable-oop-print-drivers
Enabled
Block insecure downloads
Enables insecure download blocking. This shows a ‘blocked’ message if the user attempts to download a file over an insecure transport (e.g. HTTP) either directly or via an insecure redirect. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#block-insecure-downloads
Disabled
Enables Display Compositor to use a new gpu thread.
When enabled, chrome uses 2 gpu threads instead of 1. Display compositor uses new dr-dc gpu thread and all other clients (raster, webgl, video) continues using the gpu main thread. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-drdc
Enabled
Out-of-process 2D canvas rasterization.
The rasterization of 2d canvas contents is performed in the GPU process. Requires that out-of-process rasterization be enabled. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#canvas-oop-rasterization
Enabled
Enable raw draw
When enabled, web content will be rastered on output surface directly. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-raw-draw
Enabled
Enable WebUSB on extension service workers
When enabled, WebUSB API is available on extension service workers. – Mac, Windows, Linux, ChromeOS, Android, Fuchsia, Lacros
#enable-web-usb-on-extension-service-worker
Enabled
Controls whether the Pepper PPB_VideoDecoder(Dev) API is supported
When disabled, Chrome will return 0 if asked to create the PPB_VideoDecoder(Dev) API by in-process callers – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#support-pepper-video-decoder-dev-api
Enabled
Shared GPUImageDecodeCache
Enables shared GPUImageDecodeCache for UI if gpu rasterization is enabled. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#ui-enable-shared-image-cache-for-gpu
Enabled
Use the MojoVideoDecoder for hardware video decoding in Pepper
Switches Pepper to use the MojoVideoDecoder for hardware accelerated video decoding instead of the legacy video decoder. – Mac, Windows, Linux, ChromeOS, Fuchsia, Lacros
#use-mojo-video-decoder-for-pepper
Enabled
Set available VRAM to be used by Thorium. Options are 128, 256, 512, and 1024 Mb. Useful for systems with very low or very high video memory. The default (if unset) is 512 Mb.
#force-gpu-mem-available-mb — S
1024 Mb
Enable native CPU-mappable GPU memory buffer support on Linux. (Linux only) You can see the effect of this on chrome://gpu in the «GpuMemoryBuffers Status» section.
#enable-native-gpu-memory-buffers
Enabled
A flag that @gz83 came up with and we both implemented. Allows you to close a tab by simply double-clicking on it, similar to an option in Vivaldi.
#double-click-close-tab
Enabled
В каждой настройке в строке, начинающейся с «#» указано короткое название для строки поиска. А следующая строка — нужное состояние настройки.
После окончания правки настроек требуется перезапустить браузер.
Теперь chrome старается эффективно использовать максимум возможностей вашего компьютера. Для проверки можно снова перейти по ссылке chrome://gpu
В этот раз картинка вас должна порадовать больше. Хотя гораздо больше радости вызовет быстрая и четкая работа самого браузера.