Valve выпустила бета-версию SteamOS 3.8.20, которая включает важное улучшение для устройств с дискретными видеокартами. Разработчики нашли способ оптимизировать распределение видеопамяти, что особенно полезно для GPU с ограниченным объёмом VRAM. Однако владельцы Steam Deck с интегрированной графикой вряд ли увидят прирост производительности.
Проблема заключалась в том, что Linux, лежащий в основе SteamOS, не всегда эффективно управлял памятью. Когда видеокарте не хватает выделенной VRAM, система использует дополнительную область в оперативной памяти — GTT (Graphics Translation Table). Доступ к ней идёт через шину PCIe, что медленнее и вызывает падение производительности в играх.
Решение предложила Натали Вок, независимый контрактор Valve, работающая над драйвером RADV для AMD. Вместе с коллегами из Intel и Red Hat она внедрила контроллер cgroups для VRAM. Это позволяет системе точнее распределять ресурсы: теперь видеокарта может использовать почти всю выделенную память, не выгружая данные в медленный GTT. Тесты с Cyberpunk 2077 на GPU с 8 ГБ VRAM показали впечатляющие результаты: использование VRAM выросло с 6,1 до 7,4 ГБ, а нагрузка на GTT упала с 1,4 до 0,65 ГБ. Это снижает количество микрофризов и зависаний.
Для Steam Deck с интегрированной графикой эффект будет минимальным, так как и VRAM, и GTT там находятся в одной системной памяти. Но для Steam Machines и других устройств на SteamOS с дискретными картами это настоящий подарок. Остаётся только надеяться, что Microsoft когда-нибудь решит аналогичные проблемы в Windows.
