Линус Торвалдс експериментира с генерирането на промени в ядрото чрез AI

Линус Торвальдс подготви комплект пачове за подсистемата за управление на паметта в ядрото на Linux, които реализират оптимизация за четене на малки блокове данни от страничния кеш без атомарно изменение на брояча на референции (refcount) в структурата folio. В текста на комита е посочено, че измененията, свързаните с тях тестове и черновият текст на бележката са създадени от AI-асистента Claude Code под надзора на Торвальдс. Промените са добавени в отделен клон на ядрото noref-filemap-read-with-llm и все още не е ясно дали ще бъдат приложени в основния клон или това е просто вътрешен експеримент.

При тестовете благодарение на пачовете е успяно повишена пропускателната способност за четене на малки файлове в конфигурация с 8 потока от 9.9-10.4 до 30-33 милиона операции в секунда (увеличение от 3 пъти), с 4 потока — от 8.9-11.6 до 25-26 млн/сек (увеличение от 2 пъти), а при еднопоточно натоварване от 7.9-8.1 до 8.8-8.9 млн/сек. Увеличението в производителността се обяснява с факта, че при едновременното достъпване на страничния кеш настъпва сериозна конкуренция между потоците за достъп до кеша. Например, когато 8 потока се опитват да четат по 16 байта данни едновременно, 99.92% от времето се изразходва не за самото четене, а за изчакване на достъпа до брояча на референции.

В пача за гарантиране на коректността на данните, вместо да се прилагат отделни локировки, изменения на броячите на референции или междинна буферификация, се прилага обходен вариант, използващ отложено освобождаване на паметта с синхронизация чрез механизма RCU (Read-Copy-Update). Предложената в пача методология гарантира, че страницата с памет няма да бъде физически освободена, докато четящият поток не завърши копирането на данните.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster