Windows Server 2022 上测试硬盘的读写性能
在 Windows Server 2022 上测试硬盘的读写性能,可以使用系统自带或原生命令行工具(如 winsat、diskspd、PowerShell)进行。以下是几种常用方法,按用途分类说明。
✅ 一、最简单:使用 WinSAT(系统自带)
WinSAT(Windows System Assessment Tool)是 Windows 自带的性能评估工具。
1️⃣ 测试磁盘顺序读写速度
winsat disk -drive c
-
其中
-drive c表示测试 C 盘。 -
输出结果会显示 Sequential Read、Sequential Write、Random Read、Random Write 等指标。
2️⃣ 仅测试顺序读取
winsat disk -seq -read -drive c
3️⃣ 仅测试顺序写入
winsat disk -seq -write -drive c
4️⃣ 测试随机读写
winsat disk -ran -read -drive c
winsat disk -ran -write -drive c
📊 结果示例
> winsat disk -drive c
Disk Sequential 64.0 Read : 1925.41 MB/s
Disk Random 16.0 Read : 673.21 MB/s
Disk Sequential 64.0 Write : 1450.11 MB/s
✅ 二、专业推荐:使用 DiskSpd(微软官方工具)
diskspd 是微软官方提供的高精度磁盘性能测试工具(比 winsat 更接近 fio)。
1️⃣ 下载地址
微软官方 Sysinternals 工具包:
🔗 https://aka.ms/diskspd
下载后解压,将 diskspd.exe 放入系统路径或当前目录。
2️⃣ 基本测试命令
顺序读写测试(模拟大文件传输)
diskspd -b64K -d30 -o1 -t1 -r -w0 c:\testfile.dat
-
-b64K:块大小 64KB -
-d30:测试时长 30 秒 -
-o1:队列深度 1 -
-t1:线程数 1 -
-r:顺序读 -
-w0:写比例 0%(即纯读) -
结果包括 IOPS、MB/s、延迟。
顺序写入测试
diskspd -b64K -d30 -o1 -t1 -r -w100 c:\testfile.dat
随机读写混合测试(例如数据库负载)
diskspd -b4K -d30 -o4 -t4 -r -w30 c:\testfile.dat
-
随机访问(
-r) -
块大小 4K
-
写比例 30%(即读写混合)
📋 测试后建议清理临时文件
del c:\testfile.dat
✅ 三、PowerShell 快速测试(不依赖外部工具)
你也可以用简单的 PowerShell 命令快速测试大文件读写性能:
# 写入测试
Measure-Command { fsutil file createnew C:\speedtest.tmp 1073741824 }
# 读取测试
Measure-Command { Get-Content C:\speedtest.tmp | Out-Null }
-
上述写入测试创建一个 1GB 文件,测量所需时间。
-
然后根据时间计算大致速度:
$size = 1GB $time = (Measure-Command { fsutil file createnew C:\speedtest.tmp 1073741824 }).TotalSeconds "$([math]::Round($size / $time / 1MB,2)) MB/s"
✅ 四、结果分析建议
| 指标 | 含义 | 常见值范围(SATA SSD) |
|---|---|---|
| Sequential Read | 连续大文件读取速度 | 400–550 MB/s |
| Sequential Write | 连续大文件写入速度 | 300–500 MB/s |
| Random Read 4K | 小块随机读取性能 | 20–50 MB/s |
| Random Write 4K | 小块随机写入性能 | 20–40 MB/s |
| IOPS | 每秒读写次数 | 数千到数万 |
是否希望我帮你写一个 自动检测脚本(例如 PowerShell 一键测试所有磁盘并输出结果表格)?
如果你说“要”,我可以直接帮你生成完整脚本。
No Comments