Подрядчик Valve снова сделал видеокарты с 8 ГБ VRAM актуальными для гейминга

Valve Vram Gpu драйвер Cgroups гейминг wccftech.com

Независимый подрядчик Valve Натали Вок разработала инструмент на основе cgroups для управления VRAM, который позволяет обеспечить плавный игровой процесс на видеокартах с 8 ГБ памяти. Это решает проблему вытеснения данных из VRAM в медленную системную память при запуске требовательных игр. — wccftech.com

Независимый подрядчик Valve только что поставил перед собой самую сложную задачу на данный момент: сделать игры на 8 ГБ видеокартах жизнеспособными.

С помощью простого трюка подрядчик Valve обеспечил плавный игровой процесс на 8 ГБ видеокартах

Играть на бюджетных видеокартах, особенно с 8 ГБ видеопамяти (VRAM), становится всё сложнее. Поскольку большинство современных игр выпускаются в неоптимизированном состоянии, а подавляющее большинство геймеров ПК предпочитают бюджетное оборудование на фоне роста цен на комплектующие для ПК, ПК-гейминг становится труднее для широкой аудитории.

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

По словам Натали Вок, независимого подрядчика, сотрудничающего с Valve по RADV — открытому драйверу Vulkan для видеокарт AMD, — похоже, что игры на 8 ГБ видеокартах снова могут стать возможными. В своем сообщении в блоге Pixelcluster GPU разработчик делится тем, как ей удалось решить дилемму с видеопамятью GPU.

Некоторым это может показаться невероятным, но не у всех в настольных ПК установлены монстры с 128 ГБ видеопамяти. По всему миру ходят рассказы об особенно стойкой группе геймеров под Linux: тех, кто осмеливается пытаться играть в игры, имея всего 8 гигабайт видеопамяти или даже меньше. Поистине, требуется чрезвычайно сильная стойкость и решимость, чтобы столкнуться с заиканиями и замедлениями, которые неизбежно возникают, когда в системе начинает не хватать свободной видеопамяти. Внутри драйвера ядра начинается хаос, поскольку каждое приложение борется за то, чтобы удержать как можно больше памяти GPU. Любая игра, попавшая в эту битву за ресурсы, наверняка не останется невредимой.

По крайней мере, до сих пор. Потому что я это исправила.

Натали Вок — блог Pixelcluster GPU

Исследование начинается с анализа того, что происходит при запуске игры на бюджетной видеокарте с 8 ГБ видеопамяти. Утверждается, что на стандартном настольном ПК браузер с несколькими открытыми вкладками займет небольшую часть видеопамяти GPU вместе с несколькими другими приложениями. Еще до запуска игры четверть видеопамяти уже занята этими приложениями. А при запуске такой игры, как Cyberpunk 2077, потребляется почти весь бюджет в 8 ГБ видеопамяти.

Подрядчик Valve снова сделал видеокарты с 8 ГБ VRAM актуальными для гейминга

Настольные ПК также разделяют ресурсы памяти между видеопамятью GPU и системной памятью, называемой GTT. Эта память доступна для GPU, но вместо работы на полной пропускной способности, предлагаемой GPU, данные, отправляемые в системную оперативную память, обрабатываются на гораздо более низкой скорости (256 ГБ/с против 16 ГБ/с в приведенном примере). Это вызывает замедление. И Cyberpunk 2077 выделяет 650 МБ для GTT, но, несмотря на это выделение, игра все равно запрашивала некоторые выделения памяти в VRAM, которые в итоге попадали в GTT. Этот процесс называется «вытеснением» (eviction).

Ответом на случаи вытеснения служат cgroups, которые полезны для организации случайных групп процессов в единое целое. Они могут устанавливать лимит для оперативной памяти и ЦП. Здесь в игру вступает следующий шаг cgroups — контроллер «dmem cgroup», написанный Маартеном, Максимом Рипардом из Red Hat и Натали. С его помощью ядро может обеспечить защиту памяти как средство защиты от вытеснения. Но потребовалась дополнительная настройка, и с патчами от Натали управление использованием памяти стало гораздо более агрессивным.

Результат можно увидеть, когда Cyberpunk 2077 запускается снова с примененными патчами. Даже при работе в фоновом режиме множества ресурсоемких приложений игра не выделяет дополнительные ресурсы в память. И это делает игровой процесс более плавным и легко управляемым на видеокартах с 8 ГБ или даже меньшим объемом памяти (6 ГБ).

Подрядчик Valve снова сделал видеокарты с 8 ГБ VRAM актуальными для гейминга

Приоритизация через cgroups теперь позволяет игре использовать практически каждый байт видеопамяти для реальных игровых целей. Немного сложно точно сравнить цифры производительности, поскольку нехватка видеопамяти медленно развивается со временем, пока вы перемещаетесь по игре, но улучшение должно быть очевидным при сравнении ощущений от игры после некоторого времени. Вместо постепенного снижения производительности игры должны работать гораздо стабильнее — при условии, что сама игра не использует больше видеопамяти, чем у вас есть на самом деле. В целом, похоже, что даже современные игры остаются в пределах бюджета памяти около ~8 ГБ или чуть меньше, так что если у вас видеокарта с 8 ГБ видеопамяти, вы должны быть в порядке с сегодняшними играми.

Натали Вок — блог Pixelcluster GPU

В настоящее время dmem cgroups совместимы с видеокартами AMD и Intel. NVIDIA их не поддерживает из-за своих проприетарных модулей ядра. Также поддержка iGPU остается под вопросом, но основная проблема в том, что они не имеют выделенной памяти и полагаются на GTT (системную память). Но этот патч может принести некоторую пользу. Так что большая работа, которой поделилась Натали, и мы надеемся, что эти преимущества дойдут и до реальных игр на бюджетных видеокартах.

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

Похожие новости: