周末,我用SQLIO (不是SQLIOSim)做了一个快速的SAN性能测试。
前两个测试涉及将随机64k块写入H:\和K:\上的1GB文件。
以下是SQLIO的结果:
sqlio v1.5.SG
using system counter for latency timings, -1794967296 counts per second
1 thread writing for 60 secs to file H:\sqlio_test.dat
using 64KB random IOs
enabling multiple I/Os per thread with 1 outstanding
buffering set to not use file nor disk caches (as is SQL Server)
using current size: 1000 MB for file: H:\sqlio_test.dat
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 220.51
MBs/sec: 13.78
latency metrics: Min_Latency(ms): 2 Avg_Latency(ms): 4 Max_Latency(ms): 30
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 0 0 6 0 84 8 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
sqlio v1.5.SG
using system counter for latency timings, -1794967296 counts per second
1 thread writing for 60 secs to file K:\sqlio_test.dat
using 64KB random IOs
enabling multiple I/Os per thread with 1 outstanding
buffering set to not use file nor disk caches (as is SQL Server)
using current size: 1000 MB for file: K:\sqlio_test.dat
initialization done
CUMULATIVE DATA:
throughput metrics:
IOs/sec: 331.81
MBs/sec: 20.73
latency metrics: Min_Latency(ms): 2 Avg_Latency(ms): 2 Max_Latency(ms): 107
histogram:
ms: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24+
%: 0 0 59 40 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0到现在为止还好。但是,如果我看看这些驱动器的性能计数器(它们都是日立OpenV SAN上的镜像“磁盘”),我在H:上得到39 MB/s,在K:上得到55 MB/s。
我完全可以肯定,当时除了SQLIO测试之外,其他什么都没有发生在这些驱动器上。所有其他SQLIO测试都显示了类似的模式。来自PerfCounters的I/O大约是SQLIO结果的2.5倍。
但哪一个是对的?
编辑:操作系统是Win 2003 R2
发布于 2010-07-26 09:56:16
愚蠢的我!
正如我所说的,磁盘是镜像的。因此,从SQLIO的角度来看,它只是一个磁盘,但是如果我将完成计数器相加,就会得到两个磁盘上的写操作!
其余的1.3因素仅仅是对完美计数器图的错误解释。我看了最大值,没有考虑到开始和结束的斜率,这降低了平均值。这些斜坡相当陡峭,所以我不得不放大到最大的细节。如果测试时间超过一分钟,情况会更好(香水样品的大小是10秒)。
所以,两者都是对的,我的信仰也恢复了:)
发布于 2010-07-26 09:30:45
试试碘酮,看看它最接近哪一个。
https://serverfault.com/questions/164049
复制相似问题