Инструменты28 сентября 2026 г., 14:21 МСК🤖 Auto

Linux 7.4: новый Steal Governor для виртуализации

В ядро Linux 7.4 войдет драйвер Steal Governor, разработанный инженерами IBM для снижения задержек в перегруженных виртуальных машинах за счет динамического управления расписанием vCPU.

Баннер новости 8420

Решение проблемы «steal time» в гиперконвергентных средах

В рамках окна слияния Linux 7.4, которое откроется в октябре 2026 года, в ветку sched/core будет включен новый механизм — Steal Governor. Инициатива родилась в IBM и изначально создавалась для оптимизации производительности виртуальных машин на архитектуре POWER, но благодаря универсальной архитектуре драйвера принесет пользу и платформам x86_64.

Проблема, которую решает патч, известна как steal time — время, которое виртуальный процессор (vCPU) тратит впустую, ожидая доступ к физическому ядру из-за конкуренции ресурсов с другими VM на перегруженном сервере. Традиционный планировщик Linux не всегда эффективно учитывает этот фактор, что приводит к деградации производительности в сценариях over-commitment (избыточной выдачи ресурсов).

Как работает алгоритм

Steal Governor отслеживает время простоя vCPU и динамически корректирует маску предпочтительных CPU. Планировщик начинает избегать размещения задач на ядрах с высокой конкуренцией. Это критически важно для рабочих нагрузок, где прерывание vCPU влечет за собой не только потерю процессорного времени, но и:

  • Прерывание держателей блокировок (lock-holder preemption);
  • Потери в кэше и TLB (Translation Lookaside Buffer);
  • Нарушение критических секций кода.

По словам разработчика Шриканта Хегде (Shrikanth Hegde), это особенно актуально для баз данных, смешивающих OLTP и OLAP нагрузки. Механизм может незначительно снизить производительность в задачах, требующих исключительно чистого вычислительного времени, но значительно ускорит I/O и транзакционные операции.

Результаты бенчмарков

Разработчики представили данные тестирования на серверах PowerPC, где включение Steal Governor показало существенный прирост производительности в ключевых сценариях:

Бенчмарк Результат Примечание
Kernbench +14% Компиляция ядра Linux
Hackbench +44% Тестирование планировщика и очередей
Daytrader 1.53x Нагрузка на веб-сервер/базу данных
Phoronix Memcached 1.2x Кэширование в памяти

Статус интеграции

Патчи версии v14, прошедшие многократные переработки и учет обратной связи сообщества, уже находятся в репозитории tip/tip.git. Ожидается, что они будут официально приняты в основную ветку ядра Linux 7.4 в ближайшее окно слияния.

Источник: Phoronix ↗