Вопрос или проблема
У меня проблема с производительностью Chrome. Когда у меня открыто два или более окон Chrome, и в одном из них воспроизводится видео (YouTube), каждое другое окно Chrome начинает тормозить и не плавно прокручивается страница или отображаются CSS-анимации (низкий FPS).
Вот скриншот диспетчера задач Chrome в момент прокрутки:
Как видно, процесс GPU потребляет слишком много ресурсов процессора.
Я также заметил, что перемещение любого окна поверх окна Chrome (где воспроизводится видео на YouTube) тоже не плавное. Очень раздражает.
Я пробовал запускать Chrome с ключом –disable-gpu-vsync, и прокрутка стала плавной, но любая CSS-анимация использовала 100% одного ядра процессора для максимального FPS.
Отключение vsync в nvidia-settings/ccsm имеет тот же эффект, даже с отключенным композитным.
Так что я не знаю, что делать. Firefox таких проблем не имеет, но я не хочу переключаться.
Вывод chrome://gpu
Graphics Feature Status
Canvas: Только программное обеспечение, аппаратное ускорение недоступно
Flash: Аппаратное ускорение
Flash Stage3D: Аппаратное ускорение
Flash Stage3D Baseline profile: Аппаратное ускорение
Compositing: Аппаратное ускорение
Multiple Raster Threads: Включено
Native GpuMemoryBuffers: Только программное обеспечение. Аппаратное ускорение отключено
Rasterization: Только программное обеспечение. Аппаратное ускорение отключено
Video Decode: Только программное обеспечение, аппаратное ускорение недоступно
Video Encode: Аппаратное ускорение
WebGL: Аппаратное ускорение
Driver Bug Workarounds
clear_uniforms_before_first_program_use
force_cube_complete
init_gl_position_in_vertex_shader
init_vertex_attributes
pack_parameters_workaround_with_pack_buffer
scalarize_vec_and_mat_constructor_args
unpack_alignment_workaround_with_unpack_buffer
use_current_program_after_successful_link
use_virtualized_gl_contexts
Problems Detected
Ускоренный 2D canvas нестабилен в Linux в данный момент
Отключенные функции: accelerated_2d_canvas
Ускоренное декодирование видео недоступно на Linux: 137247
Отключенные функции: accelerated_video_decode
Всегда вызывайте glUseProgram после успешной компоновки, чтобы избежать ошибки драйвера: 349137
Примененные обходные решения: use_current_program_after_successful_link
Компоновка программы не удается в NVIDIA Linux, если не установлен gl_Position: 286468
Примененные обходные решения: init_gl_position_in_vertex_shader
Очистите униформы перед первым использованием программы на всех платформах: 124764, 349137
Примененные обходные решения: clear_uniforms_before_first_program_use
Драйверы NVIDIA для Linux не имеют правильных значений по умолчанию для атрибутов вершин: 351528
Примененные обходные решения: init_vertex_attributes
Всегда переписывайте конструкторы vec/mat для согласованности: 398694
Примененные обходные решения: scalarize_vec_and_mat_constructor_args
MakeCurrent медленно работает с драйверами NVIDIA на Linux
Примененные обходные решения: use_virtualized_gl_contexts
NVIDIA не может выполнить glReadPixels из неполной текстуры кубической карты: 518889
Примененные обходные решения: force_cube_complete
Пакетные параметры неправильно работают с подключенным пакетом буфера: 563714
Примененные обходные решения: pack_parameters_workaround_with_pack_buffer
Выравнивание неправильно работает с подключенным буфером распаковки: 563714
Примененные обходные решения: unpack_alignment_workaround_with_unpack_buffer
Ускоренная растризация была отключена, либо через about:flags, либо через командную строку.
Отключенные функции: rasterization
Моя конфигурация ПК:
i7 6700k
32Gb DDR4 RAM
Nvidia GTX1080 с последним драйвером nvidia-370
Ubuntu 16.04 / последний Chrome/Chromium (пробовал оба)
обновление
Эта проблема воспроизводится на других дистрибутивах Linux с различными DE и композитными менеджерами. И не только у меня.
Так что, скорее всего, проблема в драйверах nvidia для карт gtx10xx.
nVidia, по-видимому, известна плохой поддержкой на Linux. Попробуйте использовать интегрированную графику для Chrome и nVidia для других задач. Я даже не могу найти подходящие драйверы для своей 760m, где я могу управлять переключением графики + базовым управлением питанием.
.
Ответ или решение
Проблема, с которой вы столкнулись, связана с высокими нагрузками на GPU и низкой частотой кадров (FPS) при прокрутке страниц в браузере Chrome. Основными факторами, вызывающими данную проблему, являются аппаратные драйверы NVIDIA для Linux и настройки аппаратного ускорения в Chrome.
Факторы, влияющие на производительность
-
Аппаратное ускорение
В вашей ситуации Chrome использует программное рендеринг для некоторых функций, что вызывает снижение производительности. Например, видео декодирование и обработка векторной графики выполняются программно, увеличивая нагрузку на процессор. -
Проблемы с NVIDIA на Linux
Ваша графическая карта GTX1080 и драйвер NVIDIA 370 имеют известные проблемы совместимости с Linux, особенно при использовании аппаратного ускорения. Это подтверждается вашими наблюдениями, а также отзывами других пользователей и обсуждениями на форумах.
Потенциальные решения
-
Настройки Chrome
- Попробуйте открыть
chrome://flags
и активировать функции, связанные с аппаратным ускорением. Если это вызывает нестабильность, отключите обратно. - Запустите Chrome с ключом
--use-gl=desktop
, который иногда улучшает производительность на системах с драйверами NVIDIA.
- Попробуйте открыть
-
Обновление драйверов NVIDIA
- Проверьте наличие более актуальных драйверов для вашей видеокарты на сайте NVIDIA.
- Рассмотрите вариант использования драйверов открытого исходного кода Nouveau, но имейте в виду, что они могут не поддерживать все функции вашей карты.
-
Видео настройки и композиты
- В настройках NVIDIA попробуйте отключить композитинг или поэкспериментировать с параметрами VSync.
- Обратите внимание на эксперименты с различными десктопными окружениями или менеджерами окон, такими как Xfce или LXDE, которые могут лучше взаимодействовать с текущими драйверами.
-
Альтернативные браузеры
- Несмотря на ваше нежелание менять браузер, временное использование Firefox может служить временной мерой, учитывая его стабильность в вашей текущей конфигурации.
Заключение
Проблема во многом связана с недостаточной поддержкой графических карт NVIDIA в Linux-среде. Обратите внимание на обновления драйверов и обсуждения в сообществе, чтобы быть в курсе решений и настроек, которые могут улучшить производительность. Надеемся, что будущие обновления от NVIDIA и Chrome исправят текущие несовершенства.
Вопрос "Chrome – высокое использование GPU и низкий FPS при прокрутке" требует комплексного подхода, начиная с диагностики аппаратных ограничений и заканчивая программными настройками. Эти меры помогут минимизировать неудобства при использовании вашего браузера.