我试图找出为什么我的应用程序在特定计算机上运行非常慢的原因(在其他任何地方都可以正常运行)。
我认为我已经将性能问题归结为硬盘读写,而我认​​为这仅仅是

磁盘速度非常慢。

我可以使用哪种工具以非破坏性的方式(在驱动器上的分区必须完好无损的情况下)测量Windows 2003下的高清读写性能?

#1 楼

Windows中有一个名为winsat的内置磁盘性能检查器:

winsat disk -drive g

(以管理员权限运行winsat

更多信息:
technet.microsoft.com/zh-cn/library/cc742157.aspx上winsat磁盘上的信息

例如:

C:\WINDOWS\system32>winsat disk -drive g
Windows System Assessment Tool
> Running: Feature Enumeration ''
> Run Time 00:00:00.00
> Running: Storage Assessment '-drive g -ran -read'
> Run Time 00:00:04.17
> Running: Storage Assessment '-drive g -seq -read'
> Run Time 00:00:08.64
> Running: Storage Assessment '-drive g -seq -write'
> Run Time 00:00:17.47
> Running: Storage Assessment '-drive g -flush -seq'
> Run Time 00:00:03.53
> Running: Storage Assessment '-drive g -flush -ran'
> Run Time 00:00:04.16
> Disk  Random 16.0 Read                       21.05 MB/s          6.0
> Disk  Sequential 64.0 Read                   38.29 MB/s          4.9
> Disk  Sequential 64.0 Write                  39.67 MB/s          4.9
> Average Read Time with Sequential Writes     1.324 ms          7.4
> Latency: 95th Percentile                     2.585 ms          7.3
> Latency: Maximum                             26.977 ms          7.9
> Average Read Time with Random Writes         1.299 ms          8.1
> Total Run Time 00:00:39.41


评论


最后一个解决方案是a)内置在b)命令行中-非常感谢。为了在2012 Server Core OS上使用它,我从Windows 8计算机上共拷贝了文件winsat.exe,d3d11.dll,dxgi.dll,d3d10.dll,d3d10_1.dll,d3d10_1core.dll,d3d10core.dll。

–Jürgen Steinblock
15年7月20日在8:14

您必须以管理员身份运行命令提示符,否则它将弹出一个新的命令提示符,并在完成后立即消失,并带有结果。

–大卫·克里德(David Krider)
15-10-14在11:05



不幸的是在虚拟服务器上不起作用:(

– Stalinko
16年7月15日在9:44

@mtk看起来是分配给结果的WinSAT分数。 zh.m.wikipedia.org/wiki/Windows_System_Assessment_Tool

– David d C e Freitas
17年2月6日在20:01

不幸的是不支持软件RAID。

–德鲁·诺克斯(Drew Noakes)
18-10-11在14:15

#2 楼

HD Tach的使用寿命已经结束。 HD Tune似乎是等效的:http://www.hdtune.com/



评论


漂亮的图FTW! +1

–伊恩持有人
09年1月27日在10:51

该链接已失效,并且他们的网站上现在有一个HD Tach寿命终止公告,说它不再受支持。

–雨果
2012年3月27日12:49

@雨果好地方,据此更新了我的答案

–TopBanana
2012年3月29日9:00

免费版本的HD Tune 2.55不允许基准磁盘写入:(

–安德烈·亚当缅科(Andrej Adamenko)
15年7月4日在3:30

#3 楼

您可以使用Perfmon收集基于物理磁盘的计数器,例如:


物理磁盘(实例)\ Disk
每个
物理磁盘的传输/秒计数器
物理磁盘(实例)\%空闲时间
平均。磁盘队列长度

或下载PAL(非常有用的监视工具)并使用针对OS的内置模板。

#4 楼

对于那些可能正在寻找能够测试SQL类型方案的人,Diskspd.exe取代了SQLIO。

#5 楼

ATTO Disk Benchmark是免费软件,不需要安装。



#6 楼

IOMeter将执行此操作。通过写入分区中自己的文件,它可以进行非破坏性测试。

评论


Iometer非常适合休闲用户。需要安装程序(用于)尝试打开friggen套接字,并且UI是您的典型OSS用户界面-丑陋,比所需的方式复杂得多,最终使任何不使用RTFM的人感到困惑。

–user939
09年8月30日在21:41

对我来说很好;-}

– ConcernedOfTunbridgeWells
09年8月31日在17:59

最新版本1.1.0不能在XP中运行,而版本2006.07.27则可以。

– ivan_pozdeev
16/09/12在15:06



我必须承认,UI远非用户友好。它仍然可以完成工作,并且与大多数其他基准测试工具不同,它可以测量延迟。

– ivan_pozdeev
2016年9月12日15:10

它还将结果保存为CSV;如果您再次选择相同的文件,它将附加到文件上-比较,绘图等都非常好。

– ivan_pozdeev
16 Sep 12'在15:43

#7 楼

Windows中的性能计数器可以显示您的传输速度,当前磁盘队列等,以便在应用程序运行时跟踪计算机上的实际瓶颈。

查看性能对象:物理磁盘

并特别关注队列计数器。磁盘可以非常快速地进行顺序读取,但是一旦尝试同时访问磁盘,队列就可能达到峰值,并给您带来可怕的性能。

#8 楼

尝试使用硬盘基准测试程序:
http://www.hdtune.com/
http://www.passmark.com/products/pt_advdisk.htm

#9 楼

除了图形工具之外,如果您希望详尽的输出来分析分区或硬盘的性能,还有一个很好的工具,称为sqlio(来自Microsoft)。
该工具基于CMD,但在运行时却表现出色到IO测试。
参考:Windows磁盘性能测试