gpt4 book ai didi

linux -/proc/sys/fs/aio-nr 永远不会高于 1024(Linux 上的 AIO)

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:50 27 4
gpt4 key购买 nike

我正在尝试在 Linux 上使用异步 io。据我所知,有 3 个选项:

  • 内核调用(io_submit 和 friend )
  • libRT - 在用户空间使用线程
  • libRTKAIO - 不使用线程的内核调用包装器

我正在使用最后一个选项,我看到,在我的单元测试中,在多个线程中运行大量异步 io 请求,/proc/sys/fs/aio-nr 永远不会高于 1024。我想知道哪里有这样的限制。

我已经将/proc/sys/fs/aio-max-nr 设置为 16M,所以这不是问题。

一个相关问题(也是我的)aio_write on linux with rtkaio is sometimes long

最佳答案

有一个名为“io_setup”的系统调用。在 librtkaio 中,此调用接收 1024 作为参数。这会导致我所描述的恒定 1024,如果并行的 ios 超过 1024,则会损害性能。请注意,1024 是硬编码的。

只有在阻塞模式下调用 lio_listio 才能提高这个 1024 bar。

关于linux -/proc/sys/fs/aio-nr 永远不会高于 1024(Linux 上的 AIO),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1799537/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com