Checking Linux server performance: popular benchmarking tools
Benchmarking allows you to determine how well your hardware is performing. This can be useful if you recently upgraded your server, want to test it after an upgrade, or compare performance to other systems.Let's look at a few tools that measure Linux CPU, disk, and RAM performance.
Iometer
A popular tool for testing the performance of disk and network subsystems. It can be used to analyze a single server or to test an entire cluster. Intel engineers developed this Linux system performance test in 1998, and in 2001 it was transferred to the Open Source Development Labs (OSDL) organization under the Intel Open Source License. Since 2003, the project has been maintained by a group of enthusiasts and hosted on the SourceForge.net platform.The Iometer utility includes two key components: the dynamo load generator and a graphical interface. The GUI is only available for Windows, while the load generator runs on Linux. It allows you to simulate the load of different applications using test templates.
Parameters that Iometer can evaluate:
- throughput;
- Linux OS performance - number of operations per second;
- latency;
- processor utilization.
The last stable version of Iometer was released in 2014, the program interface looks outdated, and the test results on modern all-flash arrays are not always correct. However, the utility is actively used by such companies as Broadcom and Dell.
vpsbench
A simple script for testing VPS performance. Distributed under the MIT license, which makes it available to a wide range of users.The utility provides information about key Linux characteristics of system performance:
- number of processor cores;
- processor frequency;
- the amount of RAM used.
Although the tool has not been updated for several years, it is in demand by cloud providers and IT companies.
HammerDB
A powerful tool for load testing databases. It is developed and supported by the Transaction Processing Performance Council (TPC), a non-profit organization.The main functionality of HammerDB:
- creating a test database schema and populating it;
- simulation of load from virtual users.
The utility is popular among IT professionals around the world. It is used by companies in more than 180 countries, including technology giants like Intel, Dell, Lenovo and Red Hat.
7-Zip
It is not only an archiver, but also a powerful Linux CPU benchmark. It tests the speed of data compression using the LZMA algorithm based on the dictionary compression scheme.It is launched with the command 7z b -mmt1 -md26, which activates single-threaded testing using a 64 MB dictionary. The results are provided in MIPS (million instructions per second) format, which is suitable for comparing processors of the same architecture. For CPUs of different architectures this indicator is less universal, which can be considered a limitation of the utility. You can also use 7-Zip to check your computer's RAM for errors.
DD
A multifunctional command-line utility whose main purpose is to copy and convert data. Can also be used to test the I/O performance of storage systems.Additionally, it can be used as a CPU benchmark if you connect a third-party program that will generate resource-intensive calculations.
- Useful for rough estimation of server-performance.
- Performs low-level operations with disks. Misuse can lead to data loss, so DD is jokingly called “disk destroyer”.
temci
It was created in 2016 by Johannes Bechberger, a student from Germany, as part of his undergraduate work. Today it is distributed under the GNU General Public License and is being actively developed by the author.Johannes' main goal was to create a utility capable of testing the performance of computing systems in a carefully tuned environment. This sets temci apart from other benchmarks.
Features of temci:
- the ability to customize the test environment: changing CPU frequency control parameters; disabling hyper-threading, L1 and L2 caches, turbo mode on Intel processors;
- use of several tools for analysis: time, perf_stat and getrusage;
- generation of detailed reports in the form of tables, graphs and diagrams.
uarch-bench
Utility from engineer Travis Downs, under active development.Key features:
- allows you to measure read and write performance;
- evaluates how efficiently the processor handles simultaneous requests;
- measures the speed of YMM register cleanup operations.
Conclusion
Assessing Linux server performance is a task that requires the use of reliable tools that help identify performance bottlenecks and optimize performance. Regular monitoring and testing eliminate the risks of failures and ensure stable system performance.08 Jan 2025, 11:29:33