During stress tests it is required to make computational resources like memory, disk space and cpu busy. For this one can do cpu intense operations or memory intense operations or disk intensive operations.
One can design different tools for this purpose. While browsing last week in my free time I came across this tool on net which is designed exactly for this purpose. It is working perfectly and very easy to use. Thanks to Devin Carraway <lookbusy@devin.com> for providing such a great tool.
Setup
yagna@yagna-desktop:~/Desktop/lookbusy-1.3$ ./lookbusy --help
usage: lookbusy [ -h ] [ options ]
General options:
-h, --help Commandline help (you're reading it)
-v, --verbose Verbose output (may be repeated)
-q, --quiet Be quiet, produce output on errors only
CPU usage options:
-c, --cpu-util=PCT, Desired utilization of each CPU, in percent (default
--cpu-util=RANGE 50%). If 'curve' CPU usage mode is chosen, a range
of the form MIN-MAX should be given.
-n, --ncpus=NUM Number of CPUs to keep busy (default: autodetected)
-r, --cpu-mode=MODE Utilization mode ('fixed' or 'curve', see lookbusy(1))
-p, --cpu-curve-peak=TIME
Offset of peak utilization within curve period, in
seconds (append 'm', 'h', 'd' for other units)
-P, --cpu-curve-period=TIME
Duration of utilization curve period, in seconds (append
'm', 'h', 'd' for other units)
Memory usage options:
-m, --mem-util=SIZE Amount of memory to use (in bytes, followed by KB, MB,
or GB for other units; see lookbusy(1))
-M, --mem-sleep=TIME Time to sleep between iterations, in usec (default 1000)
Disk usage options:
-d, --disk-util=SIZE Size of files to use for disk churn (in bytes,
followed by KB, MB, GB or TB for other units)
-b, --disk-block-size=SIZE
Size of blocks to use for I/O (in bytes, followed
by KB, MB or GB)
-D, --disk-sleep=TIME
Time to sleep between iterations, in msec (default 100)
-f, --disk-path=PATH Path to a file/directory to use as a buffer (default
/tmp); specify multiple times for additional paths
lookbusy -m 1GB
You can verify by using either top or dstat(dstat -m).
lookbusy -c 70
You can verify by using either top or dstat(dstat -cp)
In software testing, a system stress test refers to tests that put a greater emphasis on robustness, availability, and error handling under a heavy load, rather than on what would be considered correct behavior under normal circumstances. In particular, the goals of such tests may be to ensure the software does not crash in conditions of insufficient computational resources (such as memory or disk space), unusually high concurrency, or denial of service attacks. - Wikipedia
One can design different tools for this purpose. While browsing last week in my free time I came across this tool on net which is designed exactly for this purpose. It is working perfectly and very easy to use. Thanks to Devin Carraway <lookbusy@devin.com> for providing such a great tool.
Setup
- Download Tool which is available at: http://www.devin.com/lookbusy/download/lookbusy-1.3.tar.gz
- Extract the tar ball in some directory
- cd into the extracted directory
- Issue ./configure
- Issue make
- Issue 'make install'
- You are done with the installation and ready to use
Usage
yagna@yagna-desktop:~/Desktop/lookbusy-1.3$ ./lookbusy --help
usage: lookbusy [ -h ] [ options ]
General options:
-h, --help Commandline help (you're reading it)
-v, --verbose Verbose output (may be repeated)
-q, --quiet Be quiet, produce output on errors only
CPU usage options:
-c, --cpu-util=PCT, Desired utilization of each CPU, in percent (default
--cpu-util=RANGE 50%). If 'curve' CPU usage mode is chosen, a range
of the form MIN-MAX should be given.
-n, --ncpus=NUM Number of CPUs to keep busy (default: autodetected)
-r, --cpu-mode=MODE Utilization mode ('fixed' or 'curve', see lookbusy(1))
-p, --cpu-curve-peak=TIME
Offset of peak utilization within curve period, in
seconds (append 'm', 'h', 'd' for other units)
-P, --cpu-curve-period=TIME
Duration of utilization curve period, in seconds (append
'm', 'h', 'd' for other units)
Memory usage options:
-m, --mem-util=SIZE Amount of memory to use (in bytes, followed by KB, MB,
or GB for other units; see lookbusy(1))
-M, --mem-sleep=TIME Time to sleep between iterations, in usec (default 1000)
Disk usage options:
-d, --disk-util=SIZE Size of files to use for disk churn (in bytes,
followed by KB, MB, GB or TB for other units)
-b, --disk-block-size=SIZE
Size of blocks to use for I/O (in bytes, followed
by KB, MB or GB)
-D, --disk-sleep=TIME
Time to sleep between iterations, in msec (default 100)
-f, --disk-path=PATH Path to a file/directory to use as a buffer (default
/tmp); specify multiple times for additional paths
Increase Memory Utilization by 1GB
lookbusy -m 1GB
You can verify by using either top or dstat(dstat -m).
Increase CPU Utilization to 70%
lookbusy -c 70
You can verify by using either top or dstat(dstat -cp)
Greetings sir,
ReplyDeleteSir, I got some issues with it.
Can I get your email id to mail you the issue