Intel анонсира четвърта версия на Cache Aware Scheduling за Linux

0
15
Intel

Новата четвърта итерация на Cache Aware Scheduling от Intel отново поставя фокус върху по‑ефективното разпределение на задачите в системи с многоядрени процесори. Пакетът от кръпки във версия v4 вече е публикуван за преглед и подсказва, че технологията постепенно узрява за включване в основното ядро.

Cache Aware Scheduling е замислен като механизъм, който да използва по‑умно сложната кеш архитектура на съвременните Xeon и EPYC процесори. Идеята е задачите, които обменят данни, да бъдат разполагани в рамките на един и същ домейн на последното ниво кеш, така че да се намалят пропуските и излишното „подскачане“ на кеш линии между ядрата. Подобна оптимизация е особено важна при процесори с множество кеш домейни и разширени NUMA конфигурации.

В четвъртата версия Intel добавя нов код, който ограничава дълбочината на сканиране на CPU‑тата в предпочитания NUMA възел, когато е активирано NUMA балансиране. Това е насочено към по‑прецизно позициониране на задачите и избягване на ненужно обхождане на топологията.
Паралелно с това са преработени някои аспекти на поведението при ниско натоварване, подобрено е управлението на LLC идентификаторите, а други по‑малки корекции изглаждат логиката на балансиране. Въпреки тези промени основният алгоритъм остава непроменен, което подсказва, че проектът вече е близо до финалната си форма.

Според данните, които Intel споделя в придружаващото писмо, новите кръпки носят осезаеми подобрения при Xeon и EPYC. Подобни резултати се наблюдават и в независими тестове на по‑ранни версии, включително при системи с AMD EPYC Turin и Intel Xeon 6 Granite Rapids, където се отчита значителен ръст в производителността при реални натоварвания.

Пакетът v4 вече е достъпен в мейл листа на ядрото и очаква обратна връзка от общността. Ако развитието продължи със същото темпо, Cache Aware Scheduling има реален шанс да се появи в основното Linux ядро още тази година, а това е стъпка, която би донесла по‑ефективно използване на хардуера в широк спектър от сървърни среди.

Прочетете още:  Fish 4.6 Shell получава поддръжка за новите systemd променливи на средата