blob: 75272b2dfb20325693c61ddaf860d4ee4db1c973 [file] [log] [blame]
NAME='Stress'
AUTHOR='Yi Yang <yang.y.yi@gmail.com>'
EXPERIMENTAL='True'
TEST_TYPE='client'
TIME='MEDIUM'
TEST_CATEGORY='Functional'
TEST_CLASS='Software'
DOC='''\
stress is not a benchmark, but is rather a tool designed to put given subsytems
under a specified load. Instances in which this is useful include those in
which a system administrator wishes to perform tuning activities, a kernel or
libc programmer wishes to evaluate denial of service possibilities, etc.
Stress command line options:
-?, --help show this help statement
--version show version statement
-v, --verbose be verbose
-q, --quiet be quiet
-n, --dry-run show what would have been done
-t, --timeout N timeout after N seconds
--backoff N wait factor of N microseconds before work starts
-c, --cpu N spawn N workers spinning on sqrt()
-i, --io N spawn N workers spinning on sync()
-m, --vm N spawn N workers spinning on malloc()/free()
--vm-bytes B malloc B bytes per vm worker (default is 256MB)
--vm-stride B touch a byte every B bytes (default is 4096)
--vm-hang N sleep N secs before free (default is none, 0 is inf)
--vm-keep redirty memory instead of freeing and reallocating
-d, --hdd N spawn N workers spinning on write()/unlink()
--hdd-bytes B write B bytes per hdd worker (default is 1GB)
--hdd-noclean do not unlink files created by hdd workers
Example: %s --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10s
Note: Numbers may be suffixed with s,m,h,d,y (time) or B,K,M,G (size).
Autotest module options:
args = Arguments passed to the stress test. If omitted, an heuristic
will be used to calculate sensible defaults
stress_length = Time length on which stress will run, in seconds.
By default is 60s.
'''
job.run_test('stress')