We at we have prepared a selection of tools and scripts for assessing the performance of processors, storage systems, and memory on Linux machines: Iometer, DD, vpsbench, HammerDB, and 7-Zip.
Other collections of benchmarks:
Photo - — CC BY
This is a benchmark for evaluating the performance of disk and network subsystems. It can work with both a single server and an entire cluster. Iometer was introduced by Intel engineers in 1998. In 2001, the corporation released the source code to a nonprofit organization called Open Source Development Labs () under the license . Since 2003, the tool has been maintained by a group of enthusiasts — the project on SourceForge.net.
Iometer consists of a load generator, dynamo, and a graphical interface. However, the latter is only available for Windows. As for the generator, it can simulate the load of third-party applications — special test templates are created for this purpose.
Benchmarks show: throughput, operations per second, latency, and CPU load. Not only average values are calculated, but also min/max.
Despite the fact that the latest stable version of the tool was released in 2014, it is still used in and . However, the age of the system does impact performance. Firstly, its interface and hasn't changed since 1998. Secondly, the tool sometimes produces results that are not entirely accurate on all-flash arrays.
A simple script for assessing VPS performance. It is distributed under the . Here is an example of its operation, taken from the official repository on GitHub:
$ bash <(wget --no-check-certificate -O - https://raw.github.com/mgutz/vpsbench/master/vpsbench)
CPU model: Intel(R) Core(TM) i7-3770 CPU @ 3.40GHz
Number of cores: 4
CPU frequency: 3417.879 MHz
Total amount of RAM: 3265 MB
Total amount of swap: 1021 MB
System uptime: 8:41,
I/O speed: 427 MB/s
Bzip 25MB: 4.66s
Download 100MB file: 1.64MB/s
The utility displays the number of cores, CPU frequency, and amounts of memory used. To assess disk performance, vpsbench performs sequential and random read/write tests. Although the utility is quite old (the last update on GitHub was made about four years ago), its many cloud providers and IT companies.
One of the most popular benchmarks for database load testing. The tool is supported by a non-profit organization — Transaction Processing Performance Council. Its aim is to develop standards for database benchmarks.
HammerDB creates a test database schema, populates it with data, and simulates load from multiple virtual users. The load can include both transactional and analytical operations. It supports: Oracle Database, SQL Server, IBM Db2, MySQL, MariaDB, PostgreSQL, and Redis.
An extensive community has formed around HammerDB. The utility is used by companies in 180 countries worldwide. Among them: , , , and many . If you want to explore the utility's capabilities on your own, you can start with .

Photo - — CC BY
This archiver has a built-in benchmark for testing processor speed when compressing a specific amount of files. It can also be used to check RAM for errors. The algorithm used for testing is (Lempel–Ziv–Markov chain Algorithm). It is based on a . For example, to run a benchmark with one thread and a 64-megabyte dictionary, just enter the command:
7z b -mmt1 -md26The program will provide the result in MIPS (million instructions per second), which can be considered a drawback. This parameter is suitable for comparing the performance of processors of the same architecture, but its applicability is limited when dealing with different architectures.
A command-line tool for converting and copying files. However, it can also be used for simple I/O tests on storage systems. It starts on almost any GNU/Linux system out of the box.
The wiki page the command for evaluating disk performance during sequential writing of 1024-byte blocks:
dd if=/dev/zero bs=1024 count=1000000 of=file_1GB
dd if=file_1GB of=/dev/null bs=1024
It is also worth noting that DD serves as a simple CPU benchmark. However, for this, an additional program requiring resource-intensive computations will be needed. For example, a utility for calculating hash sums .
dd if=/dev/zero bs=1M count=1024 | md5sumThe command above will show how quickly (MB/s) the system processes a long numerical sequence. However, experts say this command is only suitable for a rough performance estimate. It is also important to remember that DD allows for low-level operations on hard drives, so it should be used cautiously to avoid data loss (the name DD is sometimes jokingly interpreted as disk destroyer).
What we write about in our blogs and social media:
![]()
![]()
![]()
![]()
![]()
![]()
Source: habr.com
