A Linux 7.2 felpörgeti a névtelen pipe-ok teljesítményét shell pipe-line-oknál és még sok más területen

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A Linux 7.2 kernel javítja az anon_pipe_write sebességét. Ezt a kernel függvényt használják az adatok írására a névtelen pipe-okba, például shell pipe-line-oknál vagy alkalmazások szabványos adatfolyamainál.

A Meta mérnöke, Breno Leitao a gyorsítótárazási kódjuk profilozása közben pipe és mutex közötti ütközést talált egy forró kódrészben. Ezt most megoldja az újonnan beolvasztott kód, amely a záron kívüli előfoglalással kerüli el az ütközést.

A VFS vegyes beolvasztási kérelemben a helyzetet így írják le:

„Az anon_pipe_write() minden oldalhoz egyszer meghívta az alloc_page()-et, miközben tartotta a pipe->mutexet. A foglalás alvásba mehet közvetlen visszafoglalás közben, és memcg-terhelést futtat, ami meghosszabbítja a kritikus szakaszt, és feltart minden párhuzamos olvasót ugyanazon a mutexen. Most akár 8 oldalt is előre lefoglalunk, mielőtt a mutexet felvesszük, a maradékot a per-pipe tmp_page[] gyorsítótárba tesszük vissza feloldás előtt, a fennmaradót pedig a feloldás után engedjük el. Így az allokátor mindkét oldalon kikerül a kritikus szakaszból. Írók × olvasók tesztben, 64 KB-os írásokkal egy 1 MB-os pipe ellen, az átbocsátás 6–28%-kal javul, az átlagos írási késleltetés pedig 5–22%-kal csökken; memória-nyomás alatt – amikor a mutex tartásának költsége a visszafoglalás alatt a legmagasabb – az átbocsátás 21–48%-kal javul, a késleltetés pedig 17–33%-kal csökken. A mikrobecslő teszt bekerült a selftests közé.”

Ez nagyon szép előrelépés. A részletesebb számok Breno Leitao javítócsomag-kísérő levelében olvashatók.