ProHoster > Blog > Administration > How to evaluate storage performance on Linux: Benchmarking with open tools
How to evaluate storage performance on Linux: Benchmarking with open tools
Π last time we talked about open source tools for evaluating processor and memory performance. Today we are talking about benchmarks for file systems and data storage systems on Linux - Interbench, Fio, Hdparm, S and Bonnie.
Fio (stands for Flexible I/O Tester) creates disk I/O streams to evaluate the performance of a Linux file system. The utility can also be run on Windows - you need to install the command line interface Cygwin. The setup guide is in fio repositories on GitHub.
Author fio - Jens Aksbo (Jens Axboe), responsible for the Linux IO subsystem and utility developer blktrace for tracing I/O operations. He created fio, because I'm tired write programs to test a specific load manually.
The utility will calculate the IOPS and throughput of the system, and will also allow you to estimate the depth of the queue of I / O operations. The utility works with special files (.fio extension), which contain the settings and conditions of the test. There are several test options, for example, there is an arbitrary write, read and overwrite. Here example file contents for the first case:
The utility was written by Canadian developer Mark Lord back in 2005. She is still supported by the author and is part of many popular distributions. The main purpose of hdparm is to configure drive settings. But the instrument can use for simple benchmarks, such as reading speed. To do this, write the command in the console:
$ sudo hdparm -t /dev/sdb
The system will generate a similar response:
Timing buffered disk reads: 242 MB in 3.01 seconds = 80.30 MB/sec
In terms of storage settings, hdparm allows you to change the amount of cache memory, modify sleep and power options, and securely erase data on the SSD. But how warn ArchLinux experts, inadvertently changing system settings can make data on the drive inaccessible and even damage the drive. Before working with hdparm, it is better to read the manual - just write the man hdparm command in the console.
This is a set of benchmarks for evaluating the performance of I / O systems. The authors of the utility were development team from the AlgoDev group, which includes employees of the Italian University of Modena and Reggio Emilia.
All benchmarks are bash scripts, evaluating storage system performance - throughput, latency, schedulers. For example, the throughput-sync.sh benchmark βbombardsβ the storage system with read or write requests (in this case, the already mentioned fio utility is used). Here this script code.
Another script - comm_startup_lat.sh - measures the latency of reading data from disk during a "cold cache" (when there is no necessary data in it). Code also can be found in the repository.
File system performance evaluation utility developed in 1989. It was created by engineer Tim Bray. With the help of Bonnie he planned optimize operation of computing systems involved in the project New Oxford English Dictionary at the University of Waterloo.
Bonnie performs Random reading and writing data to disk. After the utility shows parameters such as the number of bytes processed per CPU-second, as well as the level of processor utilization in percent. The benchmark source code can be find on google code.
Based on Bonnie, another set of tools for testing a hard drive is built - Bonnie++ (written in C++ instead of C). It provides additional benchmark tools. For example, zcav to evaluate the performance of different HDD zones. Also Bonnie++ suitable for testing mail servers and database servers.
The utility was developed Con Kolivas (Con Kolivas), an Australian anesthetist who is known for his contributions to the development of the Linux kernel and work on "fair cpu scheduler". Interbench helps you configure I/O scheduler and file system settings.
Interbench emulates the behavior of the CPU scheduler when executing interactive tasks. These interactive tasks can be working with sound and video, running computer games, or simply dragging and dropping a dialog box in the operating system.