- В окне слияния Linux 7.4 объединены масштабные патчи для подсистем управления памятью, планировщика и очередей задач.
- Ранний аллокатор физической памяти memblock продемонстрировал колоссальное ускорение инициализации - с ~268 секунд до ~50 миллисекунд.
- Нововведения затрагивают разработчиков ядра, серверные платформы, оборудование с поддержкой NVIDIA Vera SMT и энергоэффективные ПК.
Масштабный апдейт подсистемы управления памятью (MM)
Окно слияния новой версии ядра Linux 7.4 принесло рекордный пакет изменений в подсистему памяти. Мейнтейнер Эндрю Мортон направил ключевой пул обновлений, включивший 539 MM-патчей с показателем рецензирования (reviewed rate) на уровне 76%. В этот транш вошли оптимизации подсистемы мониторинга доступа к данным DAMON, а также структурные улучшения распределения ресурсов.
Параллельно в репозиторий вошли изменения в коде mm/memblock.c, отвечающем за ранний аллокатор физической памяти, используемый до развертывания основного менеджера страниц. Оптимизация алгоритма устранила узкое место при старте системы, сократив время работы блока с впечатляющих ~268 секунд всего до ~50 миллисекунд.
Очереди задач и прирост производительности Slab
Особого внимания заслуживает подсистема очередей задач (workqueue). Разработчики внедрили патчи, обеспечивающие ускорение отдельных операций в диапазоне от 10 до 100 раз. В свою очередь, пул изменений slab-аллокатора, хоть и ориентирован на внутренние механизмы, обеспечил прирост пропускной способности на 24% в бенчмарках, нагружающих менеджмент памяти ядра.
| Подсистема ядра | Характер изменения | Результат / Метрика |
|---|---|---|
| Ранний аллокатор memblock | Оптимизация mm/memblock.c | Ускорение с ~268 с до ~50 мс |
| Подсистема Workqueue | Переработка обработки задач | Ускорение операций от 10x до 100x |
| Аллокатор Slab | Оптимизация внутренних очередей | +24% пропускной способности в тестах MM |
| Пакет патчей MM (Andrew Morton) | Комплекс улучшений и DAMON | 539 патчей (76% reviewed) |
| Сборка ядра | Патчи инженера Arm Лоренцо Стоукса | Заметное сокращение времени компиляции |
Планировщик, PCIe и ускорение компиляции
Инженер Arm Лоренцо Стоукс представил серию патчей, нацеленных непосредственно на процесс сборки самого ядра Linux 7.4, что существенно сокращает затраты времени при компиляции крупных проектов разработчиками. В планировщике задач снижена задержка выполнения коротких задач (short-slice tasks) и добавлена поддержка приоритетов для архитектуры NVIDIA Vera SMT. Кроме того, изменения в подсистеме PCI/PCIe улучшили механизм гибернации, упрощая устройствам прохождение экологических и энергоэффективных сертификаций.
Для серверных инженеров и пользователей высоконагруженных систем ядро Linux 7.4 несет существенный рост отзывчивости подсистемы памяти и сокращение времени холодного старта. Разработчики ПО получат более быструю сборку ядра, а оптимизации планировщика и гибернации положительно скажутся на портативных ПК и новейших чипах с SMT.
Помню, как раньше на старых серверах с большим объемом RAM загрузка могла быть реально долгой из-за memblock. Если эти 268 секунд до 50 миллисекунд — это не просто теория, а реальный кейс, это просто фантастика! Для меня, как администратора, который часто пересобирает кастомные ядра, ускорение компиляции тоже очень актуально. Главное, чтобы это не принесло новых регрессий, как это иногда бывает с такими масштабными изменениями. Надеюсь, на практике все будет так же гладко.