```io_uring, libaio 在不同 Linux 内核中的性能,以及意外的 IOMMU 陷阱```
io_uring, libaio performance across Linux kernels and an unexpected IOMMU trap

原始链接: https://blog.ydb.tech/how-io-uring-overtook-libaio-performance-across-linux-kernels-and-an-unexpected-iommu-trap-ea6126d9ef14

启用 JavaScript 和 Cookie 以继续。

最近的基准测试 (ydb.tech) 使用 `fio` 比较了 Linux 内核 (5.4 到 7.0-rc3) 中 `libaio` 和 `io_uring` 的性能。虽然 `io_uring` 显示出预期的提升(大约 2 倍),但在启用 IOMMU 时观察到令人惊讶的约 30% 性能*下降*——这是内核版本之间的一个默认更改。 作者 eivanov89 正在寻求进一步调查原因,评论者建议详细测量中断计数、IRQ 处理延迟以及中断处理期间的 CPU 使用率。测试侧重于 4K 随机写入,这是一种常见的数据库工作负载,因为它能够突出显示快速 NVMe 驱动器上的软件延迟。虽然顺序 I/O 可能显示出较小的差异,但作者认为核心问题可能仍然存在。他们愿意分享细节并重现结果。
相关文章

原文
联系我们 contact @ memedata.com