Linus Torvalds yadro xotirasini boshqarish quyi tizimi uchun bir qator yamalar tayyorladi. Linux, folio tuzilmasidagi havolalar sonini (refcount) atomik ravishda o'zgartirmasdan sahifa keshidan kichik ma'lumotlar bloklarini o'qish uchun optimallashtirishlarni amalga oshirish. Commit matnida o'zgarishlar, tegishli testlar va qoralama annotatsiya matni Torvalds rahbarligida Klod Kod AI yordamchisi tomonidan yaratilganligi aytilgan. O'zgarish alohida yadro filialiga, noref-filemap-read-with-llm ga qo'shildi va u asosiy filialga orqaga ko'chirilishi yoki shunchaki ichki tajriba ekanligi hali aniq emas.
Sinov jarayonida yamalar 8 oqimli konfiguratsiyada kichik fayllarni o'qish tezligini sekundiga 9.9-10.4 dan 30-33 million operatsiyagacha (3 baravar ko'payish), 4 oqimli konfiguratsiyada 8.9-11.6 dan sekundiga 25-26 million operatsiyagacha (2 baravar ko'payish) va bitta oqimli konfiguratsiyada 7.9-8.1 dan sekundiga 8.8-8.9 million operatsiyagacha oshirdi. Ushbu unumdorlikning oshishi sahifa keshiga bir vaqtning o'zida kirish keshga kirishda oqimlar o'rtasida jiddiy raqobatni keltirib chiqarishi bilan izohlanadi. Masalan, 8 oqim bir vaqtning o'zida 16 bayt ma'lumotni o'qishga harakat qilganda, vaqtning 99.92% o'qishning o'ziga emas, balki ma'lumotnoma hisoblagichiga kirishni kutishga sarflanadi.
Ma'lumotlarning to'g'riligini ta'minlash uchun yamoq alohida qulflarni olish, ma'lumotnoma hisoblagichlarini o'zgartirish yoki oraliq buferlash o'rniga, Read-Copy-Update (RCU) mexanizmi orqali sinxronizatsiya bilan kechiktirilgan xotira ajratilishidan foydalanadigan vaqtinchalik yechimdan foydalanadi. Bu usul o'qish oqimi ma'lumotlarni nusxalashni tugatmaguncha xotira sahifasi jismonan ajratilmasligini kafolatlaydi.
Manba: opennet.ru
