From LinuxReviews
Jump to navigationJump to search

sysbench is a cli benchmark tool capable of doing general-purpose benchmarks of CPU, memory, I/O performance as well more specialized benchmarks. It is based on LuaJIT. It is mostly useful for testing server and VPS performance as it lacks any support for testing graphics performance and other desktop-oriented features.

Features and Usability

sysbench is a cli program meant to be run from a terminal. Its basic use is sysbench testname run where the tests would be one of:

  • cpu - CPU performance test
  • fileio - File I/O test
  • memory - Memory functions speed test
  • mutex - Mutex performance test
  • threads - Threads subsystem performance test

or, for the more advanced users, oltp_*.lua to run specialized database benchmarks.

Each test has a number of configuration options specific to it. Run sysbench testname help as in sysbench memory help to see what options are availalbe when running a specific test. Options are not required to run the cpu and memory tests. The fileio test will not run without specifying a --file-test-mode.

sysbench has a number of command line options who apply to all the test. Type sysbench help to see them. The --threads=N and --time=N options are worth adjusting for most of the tests. sysbench defaults to using just one thread and the time a test is allowed to run before it exists defaults to just 10 seconds. The CPU test will therefore test single-thread performance on one core for 10 seconds if you do not adjust those options.

Verdict And Conclusion

sysbench is a handy tool worth being aware of. It can be useful if you want to see how two systems compare to each other in the areas it has tests for.


sysbench is available as a package named sysbench on the vast majority of GNU/Linux distributions. There are some installation instructions on the homepage. You will likely not need those, just install it with your distributions regular package manager.


sysbench is developed on GitHub at