dd oflag =直接快5倍

我有这个规格的服务器中的Centos 6.2:

2xCPU 16 Core AMD Opteron 6282 SE 64GB RAM Raid controller H700 1GB cache NV - 2HD 74GB SAS 15Krpm RAID1 stripe 16k (OS Centos 6.2) sda - 4HD 146GB SAS 15Krpm RAID10 stripe 16k (ext4 bs 4096, no barriers) sdb -> /vol01 Raid controller H800 1GB cache nv - MD1200 12HD 300GB SAS 15Krpm RAID10 stripe 256k (For DB Postgres 8.3.18) (ext4 bs 4096, stride 64, stripe-width 384, no barriers) sdc -> /vol02 

我正在用ddtestingIO速度,并查看如果在RAID10 12磁盘exec:

 dd if=/dev/zero of=DD bs=8M count=10000 oflag=direct 10000+0 records in 10000+0 records out 83886080000 bytes (84 GB) copied, 126,03 s, 666 MB/s 

但如果我删除“oflag =直接”选项获得约80 MB /秒 。 在阅读基准testing中,结果是相似的:

 dd of=/dev/null if=DD bs=8M count=10000 iflag=direct 10000+0 records in 10000+0 records out 83886080000 bytes (84 GB) copied, 79,5918 s, 1,1 GB/s 

如果删除iflag =直接获取150MB / s

我不明白这个巨大的差异,在其他机器上没有这种行为。

我可以有一些内核参数configuration错误吗?

谢谢!

最后问题是Biosconfiguration错误。 我已经将BIOS的“电源pipe理”设置为“最高性能”configuration文件: DELL电源pipe理的最佳实践

有了这个设置,dd在有或没有oflag = direct的情况下具有相同的性能