如何在 Windows 下测量磁盘性能?

如何在 Windows 下测量磁盘性能?

我正在尝试找出为什么我的应用程序在某台机器上运行非常慢(在其他地方运行良好)。我认为我已经将性能问题追溯到硬盘读写,我认为这只是磁盘速度太慢。

我可以使用什么工具以非破坏性的方式测量 Windows 2003 下的硬盘读写性能(驱动器上的分区必须保持完整)?

答案1

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

winsat disk -drive g

winsat以管理员权限运行;在此示例中g为驱动器)G:

文档:https://learn.microsoft.com/en-us/windows/win32/winsat/using-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

默认情况下,它不会测试随机写入速度,因此您可以使用以下命令检查随机 16.0 写入:winsat disk -write -ran -drive c例如。

答案2

HD Tach 已停产。HD Tune 似乎相当:http://www.hdtune.com/

HD Tune 截图

答案3

对于那些可能正在寻找能够测试 SQL 类型场景的人来说,有磁盘驱动器它已取代了 SQLIO。

答案4

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

  • 物理磁盘(实例)\每个物理磁盘的磁盘传输/秒计数器

  • 物理磁盘(实例)\% 空闲时间

  • 平均磁盘队列长度

或下载朋友(非常有用的监控工具)并使用针对操作系统的内置模板。

相关内容