Linus Torvalds on valmistellut joukon korjauspäivityksiä ytimen muistinhallintajärjestelmälle. Linux, optimoiden pienten tietolohkojen lukemista sivun välimuistista muuttamatta atomaarisesti viitemäärää (refcount) foliorakenteessa. Commit-teksti toteaa, että muutokset, niihin liittyvät testit ja luonnosmerkintätekstin on luonut Claude Code -tekoälyavustaja Torvaldsin valvonnassa. Muutos lisättiin erilliseen ytimen haaraan, noref-filemap-read-with-llm, eikä ole vielä selvää, siirretäänkö se takaisin päähaaraan vai onko kyseessä vain sisäinen kokeilu.
Testauksen aikana korjaukset lisäsivät pienten tiedostojen lukunopeutta 8-säikeisessä kokoonpanossa 9.9–10.4 miljoonasta operaatioon sekunnissa 30–33 miljoonaan operaatioon sekunnissa (kolminkertainen kasvu), 4-säikeisessä kokoonpanossa 8.9–11.6 miljoonasta operaatioon sekunnissa 25–26 miljoonaan operaatioon sekunnissa (kaksinkertainen kasvu) ja yksisäikeisessä kokoonpanossa 7.9–8.1 miljoonasta operaatioon sekunnissa 8.8–8.9 miljoonaan operaatioon sekunnissa. Tämä suorituskyvyn kasvu selittyy sillä, että sivuvälimuistin samanaikainen käyttö aiheuttaa kovaa kilpailua säikeiden välillä välimuistia käytettäessä. Esimerkiksi kun 8 säiettä yrittää samanaikaisesti lukea 16 tavua dataa, 99.92 % ajasta ei kulu itse lukemiseen, vaan odotettaessa referenssilaskurin käyttöä.
Tietojen oikeellisuuden varmistamiseksi korjaustiedostossa käytetään kiertotapaa, joka hyödyntää viivästettyä muistin vapautusta synkronoinnissa Read-Copy-Update (RCU) -mekanismin kautta erillisten lukkojen hankkimisen, referenssilaskureiden muuttamisen tai välipuskuroinnin sijaan. Tämä menetelmä takaa, että muistisivua ei fyysisesti vapauteta ennen kuin lukusäie on kopioinut tiedot.
Lähde: opennet.ru
