【问题标题】:linux IOSTAT double counting AIO write operations?linux IOSTAT双重计数AIO写操作?
【发布时间】:2013-06-04 03:06:28
【问题描述】:

作为调试 IO 生成器的一部分,我在 x64 硬件上运行的 RH 6.4 下遇到了一组奇怪的结果(在多个系统上验证):

-- 应用程序使用 linux 异步 IO(即非 posix)来访问原始磁盘分区(/dev/sdb1,O_DIRECT),并以 root 身份运行

-- 应用程序报告 100 io/s 和 60% 的写入。

-- 应用程序的 strace 向 io_submit() 和 io_getevents() 报告每秒 100 次调用,反映每秒 100 次 AIO 操作

-- 'dstat --aio' 显示每秒 100 次操作

-- iostat 按预期报告每秒 40 次读取,但每秒写入 120 次,是预期的两倍

-- 较早的实现,使用同步 IO,不显示“双倍”写入

此行为是否为已知错误?

【问题讨论】:

    标签: linux aio iostat


    【解决方案1】:

    经过进一步测试,这种行为似乎仅限于(默认)CFQ 调度程序。迁移到 NOP 调度程序使 IOSTAT 与其他测量工具保持一致。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-07-02
      • 2017-06-21
      • 1970-01-01
      • 2012-01-20
      • 2011-10-18
      • 1970-01-01
      • 2020-05-12
      • 1970-01-01
      相关资源
      最近更新 更多