Skip to content

RedCreationTech/diskspd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

磁盘I/O性能测试工具包

快速开始

🚀 一分钟快速测试

# 1. 打开管理员PowerShell
# 2. 导航到工具目录
cd tools\diskspd

# 3. 执行快速测试(5个文件并发,30秒)
.\quick-disk-test.ps1 -ConcurrentFiles 5 -TestDuration "30s"

📊 标准化测试流程

# 第一步:建立基线
.\collect-baseline-simple.ps1 -TestDuration "30s"

# 第二步:多文件并发测试
.\enhanced-multifile-test.ps1 -CompareWithBaseline -TestDuration "30s"

# 第三步:查看结果
# 观察基线保持率,评估系统性能

核心工具

工具 用途 推荐场景
quick-disk-test.ps1 快速并发测试 日常验证
enhanced-multifile-test.ps1 标准化测试 客户演示
collect-baseline-simple.ps1 基线数据收集 系统评估
disk-performance-test.ps1 全面性能测试 深度分析
multifile-stress-test.ps1 压力测试 极限评估
simple-multi-file-demo.ps1 演示版本 客户交流

关键指标理解

  • IOPS: 每秒I/O操作数,衡量并发处理能力
  • MB/s: 吞吐量,衡量数据传输速度
  • 基线保持率: 并发测试中单文件性能相对基线的保持程度

性能评估标准

  • 优秀: 基线保持率 > 70%
  • 良好: 基线保持率 50-70%
  • 需改进: 基线保持率 < 50%

完整文档


DiskSpd 基础工具说明

DISKSPD

DISKSPD 2.2 6/3/2024

NOTE: changes to the asynchronous IO loop will require rebaselining results with queue depths greater than 1. The new design drains the completion queue more aggressively, shrinking delays that impacted latency measurement especially on faster storage targeting higher queue depths. Latency measurement is improved at a very small cost to rates, as well as improving rates when latency measurement is not used (-D or -L) due to batch dequeue.

Smaller IO sizes will see the most change.

  • New: Socket, NUMA, Core and Power Efficiency Class (big/little cores) added to processor topology reporting (XML and text output)
    • topology elements only displayed in text results when > 1 are present (e.g. multi-socket systems)
    • CPU numbering remains group relative, as is the new Core numbering
    • highest Power Efficiency Class is marked with a P suffix (this will usually be 1P v. 0)
    • NOTE: efficiency classes can have major impact; work on heterogenous systems must be aware of core properties in combination thread affinity rules (see -a and -n )
  • New: active power scheme reporting
  • New: base target offset switch now allows range specification: -Bbase[:length]; replaces -B and -f
  • post-run latency histogram processing now significantly faster
  • verbose output is more consistent; includes actual warmup, measured and cooldown intervals v. expected

Binary release supports down to Windows 8 and Windows Server 2012; now uses the Universal CRT.

DISKSPD 2.1 7/1/2021

  • New -g<n>i form allowing throughput limit specification in units of IOPS (per specified blocksize)
  • New -rs<pct> to specify mixed random/sequential operation (pct random); geometric distribution of run lengths
  • New -rd<distribution> to specify non-uniform IO distributions across target
    • pct by target percentage
    • abs by absolute offset
  • New -Rp<text|xml> to show specified parameter set in indicated profile output form; works with -X XML profiles and conventional command line
  • XML results/profiles are now indented for ease of review
  • Text result output updates
    • now shows values in size units (K/M/G, and now TiB) to two decimals
    • thread stride no longer shown unless specified
    • -F/-O threadpool parameters shown
  • XML profiles can now be built more generically
    • XML profiles can be stated in terms of templated target names (*1, *2), replaced in order from command line invocation
    • the command line now allows options alongside -X: -v, -z, -R and -W/-d/-C along with template target specs

DISKSPD 2.0.21a 9/21/2018

  • Added support for memory mapped I/O:
    • New -Sm option to enable memory mapped I/O
    • New -N<vni> option to specify flush options for memory mapped I/O
  • Added support for providing Event Tracing for Windows (ETW) events
  • Included a Windows Performance Recorder (WPR) profile to enable ETW tracing
  • Added system information to the ResultParser output

DISKSPD 2.0.20a 2/28/2018

  • Changes that may require rebaselining of results:
    • New random number generator that may show an observable decreased cost
    • Switched to 512-byte aligned buffers with the -Z option to increase performance
  • New -O option for specifying the number of outstanding IO requests per thread
  • New -Zr option for per-IO randomization of write buffer content
  • XML: Adds a new <ThreadTarget> element to support target weighting schemes
  • Enhanced statistics captured from IOPS data
  • Added support for validating XML profiles using an in-built XSD
  • Added support for handling RAW volumes
  • Updated CPU statistics to work on > 64-core systems
  • Updated calculation and accuracy of CPU statistics
  • Re-enable support for ETW statistics

DISKSPD 2.0.18a 5/31/2016

  • update /? example to use -Sh v. deprecated -h
  • fix operation on volumes on GPT partitioned media (:)
  • fix IO priority hint to proper stack alignment (if not 8 byte, will fail)
  • use iB notation to clarify that text result output is in 2^n units (KiB/MiB/GiB)

DISKSPD 2.0.17a 5/01/2016

  • -S is expanded to control write-through independent of OS/software cache. Among other things, this allows buffered write-through to be specified (-Sbw).
  • XML: adds a new <WriteThrough> element to specify write-through
  • XML: <DisableAllCache> is no longer emitted (still parsed, though), in favor or <WriteThrough> and <DisableOSCache>
  • Text output: OS/software cache and write-through state are now documented separately (adjacent lines)
  • Latency histogram now reports to 9-nines (one part in one billion) in both text and XML output
  • Error message added for failure to open write-content source file (-Z<size>,<file>)

技术支持

快速问题排查

  • 确保以管理员身份运行PowerShell
  • 检查磁盘剩余空间(需要至少20GB)
  • 临时关闭防病毒软件避免干扰
  • 查看完整文档获取详细解决方案

联系支持

遇到问题?查看完整文档或联系技术支持团队。


磁盘I/O测试工具包版本: v1.0 | 创建时间: 2025-07-07

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published