Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security & DevOps Insights

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form
Home » Network | Monitoring » Testing Disk Subsystem Integrity for SQL Server with SQLIOSim
  • VPNonWindows
    Configure VPN on Windows Server: How to allow remote VPN Access for Domain or Local Users Windows Server
  • commit trong git 640
    How to uninstall Git from MacOS Mac
  • Run Linux on Windows Server
    How to install Windows Subsystem for Linux on Windows Server Linux
  • Feature Image
    How to Enable and Disable WMI Traffic through Windows CMD Windows
  • lampstack feature lamp stack ubuntu
    How to Install LAMP Stack on Ubuntu 18.04 Linux
  • 1 WeXxkEX0JG3oB781HD8Hrg
    Error 0x204: Unable to Connect to Remote PC [Part 1] Windows Server
  • article 1280x720.192a2586 1
    How to apply Windows Updates from WSUS to AWS Instances AWS/Azure/OpenShift
  • We cannot fine camera
    Fix we could not find a camera compatible with Windows Hello Face Windows

Testing Disk Subsystem Integrity for SQL Server with SQLIOSim

Posted on 26/12/202505/01/2026 Link State By Link State No Comments on Testing Disk Subsystem Integrity for SQL Server with SQLIOSim
SQLIOSim utility to simulate SQL Server

In this guide, we will discuss “Testing Disk Subsystem Integrity for SQL Server with SQLIOSim”. The performance of a SQL Server instance is critically dependent on the underlying disk subsystem. High latency, insufficient throughput, or suboptimal storage configurations can negatively impact stability and scalability, regardless of code quality or available CPU and memory resources. Please, see “Scan Apple Calendar: Prevent Norton from scanning your Apple Calendar on iOS“, and Sync file and photos from iOS and Mac with Synology Drive“.

For this reason, proactive validation and objective analysis of I/O performance are essential activities in the design, troubleshooting, and capacity planning of SQL Server environments.

Also, see Veeam Backup and Replication Disk I/O with diskspd, and how to “Install and conduct performance testing using Apache JMeter on your Web App“. Here is How to sync your passwords across iOS and Mac devices

SQLIOSim Purpose

This technical guide is dedicated to SQLIOSim, a utility designed to simulate SQL Server–like workloads on a disk subsystem.

By generating realistic and configurable I/O patterns, SQLIOSim enables administrators and engineers to evaluate storage behavior under controlled conditions, isolate variables, and collect meaningful metrics to support informed architectural decisions. Throughout this guide, you will find:

  • an overview of how SQLIOSim works and its primary use cases;
  • guidance on configuring tests based on common SQL Server workloads (OLTP, DSS, tempdb, transaction logs);
  • instructions on interpreting results and key performance indicators such as latency, IOPS, and throughput;
  • best practices for using the tool in test, pre-production, and troubleshooting scenarios.

This guide is intended for DBAs, system engineers, and infrastructure professionals who want a deeper understanding of how storage performance affects SQL Server.

Please, see “Enable or disable Core Isolation Memory Integrity in Windows 10 and 11“, how to install WSL on Windows, and MSSQL DMA Compatibility Mode: Prepare and Migrate Safely.

SQLIOSim Copy to Target Location

The goal is to provide a practical, methodical, and repeatable approach to using SQLIOSim as a reliable support tool for performance analysis and infrastructure decision-making.

Copy the entire folder to the disk you intend to test on the target host. In this example, the folder is copied to drive P:\ on the host where the database resides and where the I/O test will be executed.

image002-min
image004-min

Within the SQLIOSIM folder, edit the sqliosim.cfg.ini file to update the paths for the test databases used by the simulator.

These paths must point to the disks or mount points you want to evaluate, ensuring that the simulated I/O workload is generated against the correct storage locations.

image006-min

In this case, replace the path D:\SQLIOSIM with P:\SQLIOSIM\SQLIOSimX64 in all entries related to the filename parameter.

This ensures that SQLIOSim creates and accesses its test files in the correct directory on the target disk, allowing the I/O workload to be executed against the intended storage subsystem.

image008-min

Therefore, run sqliosim.exe using “Run as administrator”.

Please note that executing the binary does not perform any installation or deploy additional components on the target host; the utility runs directly without modifying the system.

image010-min

Click “OK” to confirm the settings shown on the screen (do not make any changes).

image012-min

Please, see How to protect Azure Kubernetes Service (AKS) with Azure Backup, and Query MBAM-protected Client for non-compliance [Part 2].

SQLIOSim Stress Test

Then click ‘Start’

image014-min

Next, the simulation starts, lasting 5 minutes

image016-min

It should be noted that after starting, the data file and log file for the database used by the simulator. subject to the stress test were created.

image018-min

The log XML file is cumulative, so you need to look for the log of the latest run. At the end of the file, there is a summary with performance indicators: sqliosim.log.xml

image020-min
image022-min

To read the output, refer to the following document: Please, see “understanding SQLIOSim Output“.

Please, see Connectivity to a writable domain controller from a node could not be determined because of an error, and how to Move Azure Resources between Subscriptions.

Consider the following parameters

1. Number of times IO throttled

  • Description: Number of times requests were interrupted due to exceeding the allowed duration.
  • Interpretation: Lower values are better.
  • Reference from the document:

“Number of times a request was removed because the duration was exceeded. Low numbers are better.“

2. IO request blocks

  • Description: Number of I/O requests handled concurrently.
  • Interpretation: Higher values are better.
  • Reference from the document:

“The more requests a system can handle concurrently, the more I/Os are issued by the tool. Characterized as ‘Concurrent IOs’.”

3. Running Average IO Duration (ms)

  • Description: Average latency of operations on data files and log files (essentially, disk latency).
  • Interpretation: Lower values are better.
    • Data files: 0–5 ms are excellent
    • Log files: 0–2 ms are acceptable
  • Reference from the document:

“Low values are good. Data files: 0–5ms or so are excellent. Log files: 0–2ms are acceptable.”

4. Total IO Time (ms)

  • Description: Total time taken to satisfy all test requests.
  • Interpretation: Values are relative; useful for comparing drives, especially on the same system.
  • Reference from the document:

“Useful for comparing drives, especially on the same system. If the values for the accumulators are similar for two drives, but one drive has significantly less Total IO Time, then the latter is more performant because it was able to service the same I/O in less time.”

I hope you found this guide on “Testing Disk Subsystem Integrity for SQL Server with SQLIOSim” very useful. Please, feel free to leave a comment below.

5/5 - (1 vote)

Thank you for reading this post. Kindly share it with others.

  • Share on X (Opens in new window) X
  • Share on Reddit (Opens in new window) Reddit
  • Share on LinkedIn (Opens in new window) LinkedIn
  • Share on Facebook (Opens in new window) Facebook
  • Share on Pinterest (Opens in new window) Pinterest
  • Share on Tumblr (Opens in new window) Tumblr
  • Share on Telegram (Opens in new window) Telegram
  • Share on WhatsApp (Opens in new window) WhatsApp
  • Share on Mastodon (Opens in new window) Mastodon
  • Share on Bluesky (Opens in new window) Bluesky
  • Share on Threads (Opens in new window) Threads
  • Share on Nextdoor (Opens in new window) Nextdoor
Network | Monitoring Tags:SQL Server 2025, SQL Server workloads, SQLIOSim, SQLIOSim Stress Test

Post navigation

Previous Post: DMA Compatibility Mode: Prepare and Migrate Safely
Next Post: How to install WSL on Windows

Related Posts

  • Header image
    How to setup a Third-Party DNS Server on a Linux Server Linux
  • Featured image   Network Access Permission...
    Fix You Might Not Have Permission to Use This Network Resource Error Network | Monitoring
  • Screenshot 2020 06 22 at 10.17.18
    How to disable Outlook and Yahoo Auto-Complete Network | Monitoring
  • UpdateOfficeOnlineServer 1
    Perform Office Online Server Update via the Microsoft Update Catalog Network | Monitoring
  • Featured image
    Domain Naming System: Enabling DNS over TLS in Windows 11 Network | Monitoring
  • Fix error Microsoft Outlook cannot sign or encrypt this message when sending email.
    How to fix error “Microsoft Outlook cannot sign or encrypt this message” when sending email? Network | Monitoring

More Related Articles

Header image How to setup a Third-Party DNS Server on a Linux Server Linux
Featured image   Network Access Permission... Fix You Might Not Have Permission to Use This Network Resource Error Network | Monitoring
Screenshot 2020 06 22 at 10.17.18 How to disable Outlook and Yahoo Auto-Complete Network | Monitoring
UpdateOfficeOnlineServer 1 Perform Office Online Server Update via the Microsoft Update Catalog Network | Monitoring
Featured image Domain Naming System: Enabling DNS over TLS in Windows 11 Network | Monitoring
Fix error Microsoft Outlook cannot sign or encrypt this message when sending email. How to fix error “Microsoft Outlook cannot sign or encrypt this message” when sending email? Network | Monitoring

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

VEEAMLEGEND

vexpert-badge-stars-5

Virtual Background

GoogleNews

Categories

veeaam100

sysadmin top30a

  • VPNonWindows
    Configure VPN on Windows Server: How to allow remote VPN Access for Domain or Local Users Windows Server
  • commit trong git 640
    How to uninstall Git from MacOS Mac
  • Run Linux on Windows Server
    How to install Windows Subsystem for Linux on Windows Server Linux
  • Feature Image
    How to Enable and Disable WMI Traffic through Windows CMD Windows
  • lampstack feature lamp stack ubuntu
    How to Install LAMP Stack on Ubuntu 18.04 Linux
  • 1 WeXxkEX0JG3oB781HD8Hrg
    Error 0x204: Unable to Connect to Remote PC [Part 1] Windows Server
  • article 1280x720.192a2586 1
    How to apply Windows Updates from WSUS to AWS Instances AWS/Azure/OpenShift
  • We cannot fine camera
    Fix we could not find a camera compatible with Windows Hello Face Windows

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,825 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon

Tags

AWS Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2025 TechDirectArchive

 

Loading Comments...
 

You must be logged in to post a comment.