我最近在这个问题上耽搁了一下:
"2顺序写入(直接io4KB对齐块)在不同的文件上表现为随机写入,这在10K RPM SAS磁盘中产生了较差的写入性能“。
事情最让我困惑:我有一批服务器,都配备了相同类型的磁盘(raid 1与2 300 of 10K RPM磁盘),但响应不同。
注意:我检查了不同libc的"pwrite“代码,这些代码除了简单的"syscall”之外什么也没有说。
我设法排除了这样的可能性: 1.我自己程序中的软件错误;通过一个简单的deamon(没有动态链接的编译),进行sequcetial直接io写入;2.磁盘问题;在一台测试机上切换2种不同版本的linux系统,这些系统在我的直接io编写模式上运行良好,切换到旧的lib版本后的几天内,就出现了糟糕的随机写入;
我试着比较:
一定有某种写作策略导致了这个问题,但我不知道从哪里开始:
真的很感激
发布于 2015-07-17 09:59:10
ANS是:因为/sys/block/sda/queue/schedule设置:
https://stackoverflow.com/questions/31445353
复制相似问题