Linux ускоряет NVMe: новый патч даёт до 15% прироста

В Linux готовят патч, который ускоряет NVMe-накопители до 15%

В ядре Linux назревает небольшое, но важное изменение, которое может заметно повлиять на производительность серверных систем. Речь идёт о новом патче, улучшающем работу NVMe-накопителей на многоядерных процессорах — в отдельных сценариях ускорение достигает 15%.


Когда я читаю подобные новости, ловлю себя на мысли: большая часть оптимизаций в Linux происходит тихо, почти незаметно, но именно из таких «мелочей» и складывается его репутация системы, которая со временем становится только быстрее и устойчивее.

Проблема, на которую обратили внимание разработчики, возникает на современных CPU с большим количеством ядер. NVMe-диски используют аппаратные прерывания (IRQ), и в условиях, когда число ядер превышает количество доступных IRQ, нескольким ядрам приходится делить одни и те же прерывания. Если распределение выполнено неудачно, появляются задержки и потери производительности.

Новый патч делает подсистему распределения CPU более «осознанной»: ядра группируются по кластерам внутри NUMA-доменов, а прерывания NVMe привязываются к тем CPU, с которыми у них лучшая локальность. В результате снижается лишний обмен данными между кластерами и уменьшаются накладные расходы.

На практике это уже дало измеримый результат. В тестах на сервере с процессором Intel Xeon производительность случайного чтения NVMe в бенчмарке FIO выросла примерно на 15%. Цифра не выглядит революционной, но в серверном мире даже такой прирост — весомый аргумент.

Важно понимать контекст: речь идёт прежде всего о серверных и высоконагруженных системах. Домашние ПК и ноутбуки вряд ли заметят разницу, но для дата-центров, облачных платформ и корпоративных хранилищ подобные оптимизации напрямую влияют на эффективность инфраструктуры.

Если смотреть шире, этот патч логично вписывается в общее развитие ядра. Ранее я уже писал о том, как развивается Linux в новых версиях, и подобные изменения хорошо дополняют курс на постепенную, но системную оптимизацию ядра. К слову, в статье про Linux 6.18 можно увидеть, насколько много внимания уделяется производительности и аппаратной совместимости.

Также нельзя не отметить, что улучшения NVMe особенно актуальны на фоне общего роста требований к подсистеме хранения. Я не раз затрагивал тему накопителей и серверных решений, например в материале о сверхъёмких SSD для дата-центров, где скорость работы с данными выходит на первый план.

Сам патч уже попал в ветку mm-everything, за которую отвечает Эндрю Мортон. Если всё пойдёт по плану, изменения могут войти в основную ветку ядра в одном из ближайших релизов Linux. Тогда ускорение NVMe станет доступно всем без каких-либо дополнительных настроек.

Именно за такие эволюционные шаги я ценю Linux: система не делает громких заявлений, но шаг за шагом становится лучше там, где это действительно важно.

Источник: Phoronix

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x