stressapptest - Man Page

stress test application for simulating high load situations

Examples (TL;DR)


stressapptest [options]


This manual page documents briefly the stressapptest command.

stressapptest (unix name for Stressful Application Test) is a program that tries to maximize randomized traffic to memory from processor and I/O, with the intent of creating a realistic high load situation in order to test the existing hardware devices in a computer.


This program supports the following options:


Run in degraded mode on incompatible systems.

-C <threads>

Number of memory CPU stress threads to run.

-d <device>

Add a direct write disk thread with block device (or file) 'device'.

-f <filename>

Add a disk thread with tempfile 'filename'.


Don't result check each transaction.

-i <threads>

Number of memory invert threads to run.

-l <logfile>

Log output to file 'logfile'.

-m <threads>

Number of memory copy threads to run.

-M <mbytes>

Megabytes of RAM to test.

-n <ipaddr>

Add a network thread connecting to system at 'ipaddr'.

-p <pagesize>

Size in bytes of memory chunks.

-s <seconds>

Number of seconds to run.

-v <level>

Verbosity (0-20), default is 8.


Use more CPU-stressful memory copy.

--blocks-per-segment <number>

Number of blocks to read/write per segment per iteration (-d).

--cache-size <size>

Size of disk cache (-d).

--cc_inc_count <number>

Number of times to increment the cacheline's member.

--cc_line_count <number>

Number of cache line sized datastructures to allocate for the cache coherency threads to operate.

--cc_line_size <number>

Size of cache line to use as the basis for cache coherency test data structures.


Do the cache coherency testing.


Write/wipe disk partition (-d).

--filesize <size>

Size of disk IO tempfiles.


Find locations to do disk IO automatically.


Inject false errors to test error handling.


Inject a lot of false errors to test error handling.


Run threads that listen for incoming net connections.


Choose memory regions associated with each CPU to be tested by that CPU.

--max_errors <number>

Exit early after finding specified number of errors.


Only do ECC error polling, no stress load.


Run without checking for ECC or other errors.

--paddr_base <address>

Allocate memory starting from this address.

--pause_delay <seconds>

Delay (in seconds) between power spikes.

--pause_duration <seconds>

Duration (in seconds) of each pause.

--random-threads <number>

Number of random threads for each disk write thread (-d).

--read-block-size <size>

Size of block for reading (-d).

--read-threshold <time>

Maximum time (in us) a block read should take (-d).

--remote_numa <time>

Choose memory regions not associated with each CPU to be tested by that CPU.

--segment-size <size>

Size of segments to split disk into (-d).


Stop after finding the first error.

--write-block-size <size>

Size of block for writing (-d). If not defined, the size of block for writing will be defined as the size of block for reading.

--write-threshold <time>

Maximum time (in us) a block write should take (-d).

See Also


stressapptest was written by Nick Sanders and Rapahel Menderico (Google Inc).

This manual page was written by Michael Prokop <> for the Debian project (and may be used by others).