Найти тему
Games4Linux

Оптимизация планировщика ядра Linux для игр: Презентация на Open-Source Summit North America

На Open-Source Summit North America выступил Changwoo Min из Igalia с презентацией об оптимизации планировщика ядра для игр в Linux. Конечно, мотивацией послужил Steam Deck от Valve, но эта работа также должна принести пользу всему сообществу Linux-игроков, позволяя уменьшить ступоры во время игры.

Презентация Igalia сосредоточилась на влиянии планировщика Linux на ступоры во время игры, а также на роли "sched_ext" как расширяемой системы планирования на основе BPF. Проект "sched_ext" был интересен по многим причинам: от исследования его возможностей Canonical/Ubuntu и быстрого прототипирования новых дизайнов планировщика до показа положительных результатов для Linux-игр с новой реализацией планировщика.

Основным техническим уделом презентации Чангву Мина был планировщик Latency-criticality Aware Virtual Deadline (LAVD). Этот планировщик на основе сроков, написанный на Rust для "sched_ext", показал многообещающие результаты. В тестах, проведенных Igalia на основе ядра Linux 6.9-rc1, LAVD показал лучшую или схожую производительность по сравнению с EEVDF как по среднему FPS, так и по 1%-му низкому кадровому темпу.

Желающие узнать больше о исследовании планировщика LAVD для Linux-игр могут посмотреть слайды с мероприятия OSS NA 2024, а также изучить планировщик LAVD на crates.io. Будет интересно увидеть, какое решение в итоге примет Valve относительно планировщика для Steam Deck/Steam OS, а также какие дальнейшие оптимизации планировщика могут произойти в ближайшем будущем.

Ссылка.