This utility can be used to test performance of storage devices.
First, one need to generate file with I/O operations:
# set mediasize=`diskinfo /dev/<device> | awk '{print $3}'`
# set sectorsize=`diskinfo /dev/<device> | awk '{print $2}'`
# raidtest genfile -s $mediasize -S $sectorsize -n 50000
It will generate test which contains 50000 I/O requests with random
size and random offset. Size is a multiple of sectorsize, but less than or
equal to 128kB (maxium size of I/O request). I/O request type (READ or WRITE)
is random as well.
All test data are stored in 'raidtest.data' file in current working directory.
To run test, one should type:
# raidtest test -d /dev/<device> -n 10
This command will read test data from 'raidtest.data' file, run 10 processes
which will be used to send requests to the given device in parallel.
When test is finished you will see statistics:
Bytes per second: <x>
Requests per second: <y>
If you compare performance of two storage devices, use the same data file!
usage: raidtest genfile [-frw] <-s mediasize> [-S sectorsize] <-n nrequests> [file]
raidtest test [-Rrw] <-d device> [-n processes] [file]
where:
-d device path to tested device
-f if raidtest.data file or specified file already exists,
remove it and create new one
-n nrequests number of requests to generate
-n processes number of processes to run
-r generate/run only READ requests
-R generate random data for write requests
-s size of destination device
-S sector size of destination device
-w generate/run only WRITE requests
file path to the data file instead of default 'raidtest.data'
Randomio is a multithreaded disk i/o microbenchmark. It
requires O_DIRECT, pread/pwrite, and pthreads.
This is an ANSI C version of the SciMark2 benchmark, translated from the
original Java sources. The intent in making this benchmark available in
C is mainly for performance comparisons.
Results of this benchmark can be sent to pozo@nist.gov.
SciMark 2.0 is a Java benchmark for scientific and numerical computing.
It measures several computational kernels and reports a composite score
in approximate Mflops (Millions of floating point operations per second).
Results of this benchmark can be sent to pozo@nist.gov and are listed at
<http://math.nist.gov/cgi-bin/ScimarkSummary>;.
Benchmark.ips provides iterations per second enhancement to Benchmark.
Railsbench is a small collection of ruby scripts which make measuring
raw performance of rails apps a snap. All tests are run from the
command prompt, making performance regression testing easy.
Siege is an http regression testing and benchmarking utility. It was
designed to let web developers measure the performance of their code
under duress, to see how it will stand up to load on the internet. It
lets the user hit a web server with a configurable number of
concurrent simulated users.
Sipp is a performance test tool / traffic generator for the SIP protocol.
It comes with a few basic SipStone user-agents scenarios (UAC & UAS), i
establishing and releasing multiple calls with the INVITE and BYE methods.
Slowloris both helps identify the timeout windows of a HTTP server or Proxy
server, can bypass httpready protection and ultimately performs a fairly low
bandwidth denial of service. It has the added benefit of allowing the server
to come back at any time (once the program is killed), and not spamming the
logs excessively. It also keeps the load nice and low on the target server, so
other vital processes don't die unexpectedly, or cause alarm to anyone who is
logged into the server for other reasons.
The main audience using slowloris is of course a system administrators wanting
to measure their webserver's performance and vulnerability.
SMHasher is a test suite designed to test the distribution, collision,
and performance properties of non-cryptographic hash functions - it
aims to be the "DieHarder" of hash testing, and does a pretty good job
of finding flaws with a number of popular hashes.