fio is an I/O tool meant to be used both for benchmark and stress/hardware verification. It has support for 6 different types of I/O engines , I/O priorities , rate I/O, forked or threaded jobs, and much more. It can work on block devices as well as files. fio accepts job descriptions in a simple-to-understand text format.