Tech riderRev. 30 Sept 2026
  1. 1Runs onLinux, Mac, Windows
  2. 2CostsFree plan
  3. 3Random I/O testsYes
  4. 4Sequential testsYes
  5. 5IOPS measurementYes
  6. 6Latency measurementYes
  7. 7Supported platformsLinux, Solaris, AIX, HP-UX, OSX, NetBSD, OpenBSD, Windows, FreeBSD, DragonFly
  8. 8Command-line interfaceYes
8 lines stated Written from the maker's own pages: fio.readthedocs.io
The fio homepage

Overview

fio is a free command-line tool for simulating user-defined I/O workloads for performance testing and reproducing bugs. Users can describe a workload in a job file or set parameters on the command line, including I/O patterns, block and I/O sizes, engines, queue depth, target files or devices, and threads or processes. Results can be reported in normal, terse, JSON or JSON+ formats. fio can run as a backend server and receive jobs from clients on other hosts; its HTTP engine supports HTTP and S3 access. It supports random and sequential tests, IOPS and latency measurement, and platforms including Linux, macOS, Windows and several BSD variants. On Windows, the documented minimums are Windows 7 and Windows Server 2008 R2, and Cygwin is required for building. The --readonly option is intended to prevent writes and trims; fio also aborts destructive jobs on devices that appear mounted unless allow_mounted_write is set. Root access is only needed when the selected files or devices require it. fio is free software under version 2 of the GNU GPL.

Who it is for

fio suits people who need to define and run storage I/O workloads for performance measurement or bug reproduction. Its job files, command-line controls and client/server mode give technical users several ways to run tests.

What is good

  • Configures patterns, sizes, engines and queue depth
  • Reports in normal, terse, JSON or JSON+ formats
  • Supports random and sequential tests
  • Measures IOPS and latency
  • Can accept jobs from clients on other hosts

What to know first

  • Windows builds require Cygwin
  • Windows minimum is Windows 7 or Server 2008 R2
  • Some files, devices or options may require elevated permissions

Specifiction review

fio: the full review

fio offers detailed workload controls, multiple output formats and remote job execution at no charge. Windows users should account for the documented minimum versions and Cygwin build requirement.

Overview

fio is a command-line tool for defining and running storage I/O workloads, especially for performance testing and reproducing bugs. It suits engineers who need to shape tests around particular storage behavior rather than rely on a fixed benchmark pattern. Its breadth of controls and free GPL license are compelling, though it expects users to work from the command line and understand the workload they want to generate.

Key features

Workload control

Users can define jobs in files or pass parameters directly, then set I/O patterns, block and I/O sizes, engines, queue depth, targets, and whether fio uses threads or processes. This makes fio useful for targeted random or sequential tests, IOPS and latency measurements, and repeatable configurations. The flexibility is a strength for technical users, but it also means fio is not a ready-made, simplified benchmark interface.

Results and remote jobs

Output is available in normal, terse, JSON, and JSON+ formats, giving users options for reading results or feeding them into other workflows. In client/server mode, fio can accept jobs from clients on other hosts, useful when workloads need to run remotely. Its HTTP engine also supports access to HTTP and S3 storage.

Safety and permissions

The --readonly option enables checks intended to prevent writes and trims, and fio aborts destructive jobs on devices that appear mounted unless allow_mounted_write is set. These controls help reduce the risk of an unintended destructive run, but they do not remove the need to choose targets and options carefully. Root access is not generally required unless the selected files or devices demand it; some options may also have permission restrictions.

Pricing

fio has one free plan: 0.00 USD per free. It is free software under version 2 of the GNU GPL, so there is no paid tier to unlock its workload controls or reporting formats. The project mailing list handles discussion, questions, bug reports, and development; bug reports can also go to GitHub.

Platforms

fio supports Linux, Solaris, AIX, HP-UX, OSX, NetBSD, OpenBSD, Windows, FreeBSD, and DragonFly. For Windows, the documented minimums are Windows 7 and Windows Server 2008 R2, and building fio requires Cygwin. Tagged-release Windows installers are available through GitHub Releases, while Linux distribution packages are also available.

Who it's for

fio is best for storage and systems practitioners who need configurable, repeatable I/O workloads, measurements of IOPS or latency, or remote job execution. Its job files and multiple output formats also suit workflows that need to preserve test definitions or process results. Readers looking for a graphical, one-click disk benchmark may be better served by a tool designed around that simpler use case.

Pros and cons

  • Pros: Fine-grained control over I/O patterns, sizes, engines, queue depth, targets, and execution model helps match a test to a specific question.
  • Pros: Normal, terse, JSON, and JSON+ outputs and remote client/server execution support varied reporting and deployment needs.
  • Pros: Free GPLv2 software spans a broad range of operating systems, with Windows installers and Linux packages available.
  • Cons: A command-line interface and extensive workload options suit technical users better than people seeking a guided benchmark.
  • Cons: Windows users must account for the minimum supported versions, and building from source requires Cygwin.

Alternatives

For a broader browse, see the Disk Benchmark Software directory. Choose Parkdale if you want a free disk utility with Android support as well as macOS and Windows. simple-disk-benchmark is another free command-line option, for Linux, macOS, and Windows. Linux users seeking an open-source disk benchmark can consider KDiskMark; Windows users can consider the freeware AS SSD Benchmark or D-Bench, which supports Windows 8/8.1/10/11 or Vista/7. Filebench is a free Linux option. DaVinci Resolve and Buddi are also listed as alternatives.

Verdict

Choose fio if you need free, cross-platform control over storage workloads, detailed measurements, or remote execution. Its main advantage is how precisely a test can be configured; look elsewhere if you want a graphical benchmark that hides workload setup behind a simple interface.

fio plans and pricing

All plans
fio Free GNU GPL version 2 software fio.readthedocs.io · 30 Sept 2026

Compared on disk benchmark software

Free plan
Yesfio.readthedocs.io
Random I/O tests
Yesfio.readthedocs.io
Sequential tests
Yesfio.readthedocs.io
IOPS measurement
Yesfio.readthedocs.io
Latency measurement
Yesfio.readthedocs.io
Supported platforms
Linux, Solaris, AIX, HP-UX, OSX, NetBSD, OpenBSD, Windows, FreeBSD, DragonFlyfio.readthedocs.io
Command-line interface
Yesfio.readthedocs.io

Facts

Purpose
fio simulates user-defined I/O workloads for performance testing and reproducing bugs.fio.readthedocs.io · 29 Sept 2026
Workload setup
Users describe workloads in job files or provide parameters on the command line.fio.readthedocs.io · 29 Sept 2026
Workload controls
Workloads can configure I/O patterns, block size, I/O size, engines, queue depth, target files or devices, and threads or processes.fio.readthedocs.io · 29 Sept 2026
Reporting
Output can be reported in normal, terse, JSON, or JSON+ formats.fio.readthedocs.io · 29 Sept 2026
Remote operation
fio can run as a backend server and accept jobs from clients on other hosts.fio.readthedocs.io · 29 Sept 2026
Storage access
The documentation describes HTTP and S3 access through fio's HTTP engine.fio.readthedocs.io · 29 Sept 2026
Platforms
The documentation lists Linux, Solaris, AIX, HP-UX, OSX, NetBSD, OpenBSD, Windows, FreeBSD, and DragonFly as supported platforms, while noting that some features vary by platform.fio.readthedocs.io · 29 Sept 2026
Windows requirement
The minimum Windows versions for building or running fio are Windows 7 and Windows Server 2008 R2.fio.readthedocs.io · 29 Sept 2026
Download options
The documentation points to official release installers for Windows on GitHub and lists binary packages in several Linux distributions and other repositories.fio.readthedocs.io · 29 Sept 2026
Safety control
The --readonly option prevents writes and trims, and fio aborts destructive jobs on devices that appear mounted unless allow_mounted_write is set.fio.readthedocs.io · 29 Sept 2026
Permissions
fio does not need root unless the specified files or devices require it, though some options may also be restricted.fio.readthedocs.io · 29 Sept 2026
Support
The project mailing list is for discussion, bug reports, questions, and development; the documentation also directs bug reports to the mailing list or GitHub.fio.readthedocs.io · 29 Sept 2026
Author
The documentation names Jens Axboe as fio's author and says he wrote it to enable flexible testing of the Linux I/O subsystem and schedulers.fio.readthedocs.io · 29 Sept 2026
Maintainers
The documentation names Jens Axboe and Vincent Fu as maintainers.fio.readthedocs.io · 29 Sept 2026
Remote execution
fio supports a client/server mode that can send jobs to run on remote hosts.fio.readthedocs.io · 30 Sept 2026
Windows requirements
The documented minimum Windows versions are Windows 7 and Windows Server 2008 R2; Cygwin is required to build fio on Windows.fio.readthedocs.io · 30 Sept 2026
Distribution
The documentation says tagged-release Windows installers are available through GitHub Releases and mentions Linux distribution packages.fio.readthedocs.io · 30 Sept 2026
License
fio is free software published under version 2 of the GNU GPL.fio.readthedocs.io · 30 Sept 2026
Safety option
The --readonly option enables checks intended to prevent write and trim workloads.fio.readthedocs.io · 30 Sept 2026
Intended users
The author describes fio as a tool for simulating specific I/O workloads without repeatedly writing tailored test programs.fio.readthedocs.io · 30 Sept 2026

Company

Founded
2006fio.readthedocs.io · 23 Sept 2026

Best fio alternatives

See all 20

Where it ranks on Specifiction

Is fio yours?

Claim it for free: prove the domain, then correct facts, plans and screenshots. An editor reviews every change.

Sources