Tuesday, November 28, 2017

benchmarking

  • Fio resides in a git repo, the canonical place is:
git://git.kernel.dk/fio.git

download
http://brick.kernel.dk/snaps/

# wget http://brick.kernel.dk/snaps/fio-2.1.10.tar.gz
# gunzip fio-3.2.tar.gz
# tar -xf fio-3.2.tar
   
# cd fio-3.2/
# ./configure
# make
# sudo make install

# fio -h

  • fio is an I/O tool that will spawn a number of threads or processes doing a particular type of io action as specified by the user.
The typical use of fio is to write a job file matching the io load one wants to simulate.
https://apps.fedoraproject.org/packages/fio

  • GitHub - axboe/fio: Flexible I/O Tester
https://github.com/axboe/fio

  • sysbench is a scriptable multi-threaded benchmark tool based on LuaJIT.
https://github.com/akopytov/sysbench




  • The dd utility is really not useful as a benchmarking tool, but it is an excellent tool to use to break in SSDs before you run a real benchmark like FIO or Sysbench 

Fio is one of my favorite tools to benchmark SSD or HDD I/O because it's so flexible. You can run sequential read and write tests, as well as random read and write tests using various block sizes like 4KB, 128KB, 512KB, or 1MB+.

On CentOS 7 / Fedora you need to add an additional repo since the stock repos don't usually include benchmarking utilities.

I strongly suggest using both FIO and Sysbench to measure I/O performance because every utility will provide a slightly different view of performance, and the results may not be the same between a FIO random write test and a Sysbench random write test, if you run both tests and the results are similar then you can consider the results to be accurate, however if the results are totally different then you might want to find out why this is the case before you can consider the test results to be accurate.


https://wiki.mikejung.biz/Benchmarking#Install_Fio_on_CentOS_7

No comments:

Post a Comment