Апублікаваная серыя патчаў для ўключэння ў ядро Linux 5.20, якая дадае падтрымку асінхроннага буферызаванага запісу ў файлавую сістэму XFS пры дапамозе механізму io_uring. Папярэднія тэсты прадукцыйнасці, праведзеныя пры дапамозе інструментара fio (1 паток, памер блока 4кб, 600 секунд, паслядоўны запіс), паказваюць павелічэнне колькасці аперацыя ўводу/высновы ў секунду (IOPS) ад 77k да 209k, хуткасці перадачы дадзеных ад 314MB/s да 854MB /s і падзенні затрымак ад 9600ns да 120ns (80 разоў). sequential writes: with patch with patch libaio psync iops: 77k 209k 195K 233K bw: 314MB/s 854MB/s 790MB/s 953MB/s Clat: 9600ns 120ns 540ns 3000
Для тых, хто цікавіцца станам io_uring на сярэдзіну 2022 года, рэкамендуецца азнаёміцца са слайдамі і відэазапісам дакладу з Kernel Recipes 2022. Аглядна згадваюцца змены, якія ўжо ўвайшлі ў ядро і плануюцца, напрыклад можна адзначыць падтрымку:
- множнага (multi-shot) accept().
- множнага (multi-shot) recv() - па тэстах прырост 6-8% - ад 1150000 да 1200000 RPS.
- абнаўленне і выпраўленні ў бібліятэцы liburing, даданне дакументацыі і тэстаў.
У кантэксце пераноснасці io_uring на слайдах згадваецца значнае падабенства з "I/O Rings", выкарыстоўванай у падсістэме Direct Storage у Windows 11, а таксама магчымасць рэалізацыі кросплатформавай працы, але з іншых платформаў на слайдзе аўтара згаданая толькі FreeBSD са знакам пытання.
Крыніца: opennet.ru