Linux: опять обещают починить планировщик⁠⁠

Серия Кудахтеры: Linux

Для ЛЛ: спустя 30 лет и 3 года коммерческий ИИ продолжает исправлять проблемы СПО, существование которых СПО сектанты принципиально отрицали.

Недавно я писал о концептуальном – невнятных проблемах с планировщиком задач в Linux. Проблема простая: под Linux, по метрикам CPU \ wait, система явно работает не во всю силу.
Нет балансировки нагрузки на CPU, и при этом планировщик постоянно пытается таскать задачи между ядрами, даже если ядер хватает, чтобы так не делать. С последствиями в виде тормозов.
Видно это плохо, нужно специально читать разные душные статьи про то, как настроить не только производительность в BIOS, или что делать с NUMA, или какие C-state бывают, но и про то, как это мониторить. Особенно в Linux, где со средствами мониторинга все очень неоднозначно (местами - просто плохо). Какие-то базовые вещи есть, чуть начинаешь искать что-то серьезнее – нет. Просто, «нет». И механизмов нет. И ты смотришь на сервер с 2 сокетами под EPYC на физических 80 ядер на сокет, и пытаешься понять, что ж так тормозно то.

Возможно, в 7.3 это починят (или уже починили)

Прежде всего, в обновлении планировщика (scheduler merge) содержатся изменения, призванные повысить игровую производительность на устаревшем «слабом» («картофельном») оборудовании. Этот набор патчей от инженера Intel Питера Зейлстры (Peter Zijlstra) оптимизирует планирование задач в рамках cgroup; его эффективность была подтверждена в ходе тестирования на системе с процессором Intel Sandy Bridge и видеокартой AMD Radeon RX 580 (архитектура Polaris). Данная серия патчей, направленная на упрощение механизма выбора задач («flatten the pick»), демонстрирует весьма многообещающие результаты
Кроме того, в код планировщика были внесены изменения, направленные на снижение задержки планирования для задач с короткими квантами времени. Винсент Гитто (Vincent Guittot) продемонстрировал весьма значительные улучшения показателей в тесте cyclictest, достигнутые благодаря этой работе:
Полный оригинал: https://www.phoronix.com/news/Linux-7.3-Scheduler

Кроме того, работа инженера Bytedance Чуи Чжоу (Chuyi Zhou) в области SMP сокращает время, в течение которого прерывания запрещены (preemption-disabled time), при ожидании завершения межпроцессорных прерываний (IPI). На 16-ядерном сервере, используемом в рабочей среде, максимальное время (на уровне 99-го перцентиля) нахождения системы в состоянии с запрещенными прерываниями снизилось с пиковых значений 16–17 мс до примерно 1,5 мс. Это изменение должно быть особенно заметно пользователям DPDK. Дэйв Хансен из Intel отметил, что за этим участком кода стоит следить на предмет возможных регрессий.

https://daily.dev/posts/what-s-coming-in-linux-7-3-scheduler-overhaul-hybrid-cpu-fixes-and-broad-hardware-support-ydm5cfa6m

И так далее.

Заключение

Будет много работы по тестированию этого добра на наших физических средах, и на физических средах коллег.

В прошлые разы оптимизация настроек и прочие мелкие радости позволили коллегам сэкономить на закупке – отложить на год закупку 20 серверов. Недорогих, конечно, по $ 15 тысяч они тогда стоили. В этот раз при текущих ценах на память и сроках поставки – может, получится подержать в работе старичков из 2015 – 2020 годов еще год, или сэкономить на объемах закупок.
Для меня это достаточно практичный вопрос – часть сэкономленных денег пойдет на премии, мою и соседнего отдела. Плохо чтоли? Хорошо.

Литература

Повторю отсюда
Переход на Proxmox (Austria) с Hyper-V by Microsoft и VMware by Broadcom Часть 12. Немного про Cpu и кластер

И отсюда
Виртуализация 2026 или немного о концептуальном

Старая (2010) статья Multi-Core Scaling In A KVM Virtualized Environment
What is a vCPU and How Do You Calculate vCPU to CPU?
Hyper-V NUMA affinity and hyperthreading
VMware response to ‘L1 Terminal Fault - VMM’ (L1TF - VMM) Speculative-Execution vulnerability in Intel processors for vSphere: CVE-2018-3646 (55806)
Mitigation Instructions for CVE-2022-21123, CVE-2022-21125, and CVE-2022-21166 (VMSA-2022-0016) (88632)
Guidance for mitigating L1 Terminal Fault in Azure Stack
Microsoft Guidance to mitigate L1TF variant
Which process scheduler is my linux system using?
Completely Fair Scheduler and its tuning
Linux schedulers – overview
The Linux Scheduler a Decade of Wasted Cores
New EEVDF Linux Scheduler Patches Make It Functionally "Complete"
What Are CPU Cores vs Threads?
CPU oversubscription and new CPU jitter counters in Windows Server 2025

Лига Сисадминов

2.8K поста19.2K подписчиков

Правила сообщества

Мы здесь рады любым постам связанным с рабочими буднями специалистов нашей сферы деятельности.

0
Автор поста оценил этот комментарий

Как-то удачно вы метрики ОС с гипервизором смешали. Ну, положим.
davg - iostat, iotop, biotop, cat /sys/block/<device>/stat.
kavg - идите в гипервизор, если тот умеет (kvm), если нет, то садиться на трейсы bpftrace read_enter/read_exit.

Disk.SchedNumReqOutstanding - размер очереди в /sys/block/<device>/...
Get-StorageQoSFlow - если qos, то где-то в /sys/fs/cgroups

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

метрики ОС с гипервизором смешали.

квм часть ядра. Стыдновато агитировать за линукс и этого не знать.


davg - iostat, iotop, biotop,

это утилиты, а не метрики


cat /sys/block/

Это тоже не метрика davg


если нет, то садиться на трейсы bpftrace

то есть вы не знаете, но верите что где-то можно ее найти и собрать.

и снова, это не метрика


если qos, то где-то в

то есть вы не знаете, но верите что где-то можно ее найти и собрать.


Классика секты. Вера вместо знания

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества