+ -
当前位置:首页 → 问答吧 → direct IO 操作文件 为什么比 普通读取的慢(第一次)

direct IO 操作文件 为什么比 普通读取的慢(第一次)

时间:2010-09-10

来源:互联网

看来一下源码 最后direct IO 或者 一般读取都是调用
submit_Io

理论上 应该direct IO比普通的IO更快(第一次) 少了一次内核到用户空间的copy

最后用iostat 看了一下
发现
direct io 的合并request 的频率非常高上万,最后IO请求的request 的次数少,
普通的操作 IO request 的请求合并很少(1:53) 请求的request却非常多(9:1)

direct io 的每次请求的算区非常多, 普通的操作的算区非常少

等待队列direct io 非常的多, 普通的操作很少

作者: raintung   发布时间: 2010-09-10

本帖最后由 hb12112 于 2010-09-10 17:19 编辑

这肯定慢了,写的话direct_io是在将数据完全写到磁盘后才返回的.
读的话直接从磁盘上读没有走page cache.没有预读.

作者: hb12112   发布时间: 2010-09-10

热门下载

更多