FileIOTest - Times the Duration of File IO Operations

FileIOTest is a command line tool that tests the speed of local or remote (SMB) storage by performing some common file IO operations repeatedly and measuring the duration.

These are the main facts:

  • Performs four different types of file IO: write, custom read, read with the GetPrivateProfileString API, create/delete
  • The number of iterations can be specified
  • Each generated file name is unique to prevent caching
  • Works with local and UNC paths
  • FileIOTest does not require any software to be installed
  • FileIOTest works on any version of Windows from Vista / Server 2008 onwards
  • FileIOTest is freeware

FileIOTest was developed to collect data for the 2015 talk on Windows folder redirection Aaron Parker, Shawn Bass and myself jointly presented.

When to Use

FileIOTest is useful for performance testing the real-world file performance of storage subsystems and protocols. With FileIOTest you can easily compare configurations by simply pointing FileIOTest at UNC paths that are hosted on different machines.

FileIOTest not only tests read and write operations but also deletes (which can be very slow with some anti-virus products) and the notorious Windows API function GetPrivateProfileString (which is used by countless applications).

Some ideas for performance tests and comparisons that might prove to be interesting:

  • SMB 1 vs. SMB 2 vs. SMB 3
  • NetApp filer vs. Windows file server
  • Comparing various anti-virus products
  • The effects of installing a DLP (data loss prevention) product

Syntax

The program’s help screen describes the available options in detail:

FileIOTest by Helge Klein

Times the duration of file IO operations against a local or remote target

Homepage:  http://helgeklein.com
Version:   1.0.1.0
Copyright: Helge Klein

Syntax:
=======

FileIOTest [-help] -target <UNC path> [-iterations <number>]

Notes:
======
The default number of iterations is 1,000.
Each generated file name is unique.
Turn off antivirus unless you want to test AV performance.

Explanation of the tests:
======
Write with custom function:
   Creates the file and writes <iteration> lines opening and closing the handle for each line
ReadPrivateProfileString:
   Calls the GetPrivateProfileString API to read <iteration> lines individually
Read with custom function:
   Opens the file once and reads <interation> lines individually
Create/delete loop:
   Creates the file, writes one line, deletes the file. This happens <iteration> times


FileIOTest finished successfully

License

FileIOTest is freeware.

Changelog

Version 1.0.1

  • First released version

System Requirements

FileIOTest works on any version of Windows beginning with Vista / Server 2008. This includes Windows 7, 8, 8.1, 10 and Server 2012 (R2). FileIOTest does not require any additional software.

FileIOTest comes as a 32-bit binary only but works correctly on both 32-bit and 64-bit Windows.

Download

Download FileIOTest here.

Comments

Related Posts

How-to: XenApp/RDS Sizing and Capacity Planning with uberAgent for Splunk

How-to: XenApp/RDS Sizing and Capacity Planning with uberAgent for Splunk
Do you know the maximum number of users each of your terminal servers can host with acceptable performance? You may have found out the hard way how many are too many - but how many are just right? Farm sizing and server capacity planning are typical tasks for consultants who often have a hard time fighting the peculiarities of perfmon and logman trying to get the data they need for their calculations. It can be so much easier at no additional cost. The 60-day Enterprise Trial version of Splunk in conjunction with an evaluation license of uberAgent give all the information you need in much less time. Here is how.
Citrix/Terminal Services/Remote Desktop Services

Latest Posts

Fast & Silent 5 Watt PC: Minimizing Idle Power Usage

Fast & Silent 5 Watt PC: Minimizing Idle Power Usage
This micro-series explains how to turn the Lenovo ThinkCentre M90t Gen 6 into a smart workstation that consumes only 5 Watts when idle but reaches top Cinebench scores while staying almost imperceptibly silent. In the first post, I showed how to silence the machine by replacing and adding to Lenovo’s CPU cooler. In this second post, I’m listing the exact configuration that achieves the lofty goal of combining minimal idle power consumption with top Cinebench scores.
Hardware

Fast & Silent 5 Watt PC: Lenovo ThinkCentre M90t Modding

Fast & Silent 5 Watt PC: Lenovo ThinkCentre M90t Modding
This micro-series explains how to turn the Lenovo ThinkCentre M90t Gen 6 into a smart workstation that consumes only 5 Watts when idle but reaches top Cinebench scores while staying almost imperceptibly silent. In this first post, I’m showing how to silence the machine by replacing and adding to Lenovo’s CPU cooler. In a second post, I’m listing the exact configuration that achieves the lofty goal of combining minimal idle power consumption with top Cinebench scores.
Hardware