Az io_uringen alapuló aszinkron pufferelt írások használata XFS-ben akár 80-szorosára csökkentette a késleltetést

Egy sor javítást tettek közzé a Linux 5.20-as kernelbe való beillesztéshez, amelyek az io_uring mechanizmussal támogatják az XFS fájlrendszer aszinkron pufferelt írásait. A fio eszközkészlettel végzett előzetes teljesítménytesztek (1 szál, 4 kB blokkméret, 600 másodperc, szekvenciális írások) a másodpercenkénti bemeneti/kimeneti műveletek (IOPS) növekedését mutatják 77 209-ról 314 854-ra, az adatátviteli sebességet 9600 MB/s-ról 120 MB-ra / s és a késleltetés csökkenése 80ns-ról 77ns-ra (209-szor). szekvenciális írások: patch nélkül patch libaio psync iops: 195k 233k 314K 854K bw: 790MB/s 953MB/s 9600MB/s 120MB/s clat: 540ns 3000ns XNUMXns XNUMX

Azok számára, akik érdeklődnek az io_uring 2022 közepén állapota iránt, javasoljuk, hogy ismerkedjenek meg a Kernel Recipes 2022 riportjának diákjaival és videófelvételeivel. Röviden megemlítjük a kernelben már szereplő és a tervezett változtatásokat, pl. például megjegyezheti, hogy támogatja:

  • multi-shot accept().
  • többszörös (multi-shot) recv() - tesztek szerint 6-8%-os növekedés - 1150000 1200000 XNUMX-ről XNUMX XNUMX XNUMX RPS-re.
  • frissítések és javítások a könyvtárban, dokumentációk és tesztek hozzáadása.

Az io_uring hordozhatóságával összefüggésben a diák jelentős hasonlóságokat említenek a Windows 11 Direct Storage alrendszerében használt „I/O gyűrűkkel”, valamint a platformok közötti működés lehetőségét, de a többi platformon a szerzői diát, csak a FreeBSD-t említik kérdőjellel.



Forrás: opennet.ru

Hozzászólás