0
0
Fork 0
haikuports/app-benchmarks/stress-ng/stress_ng-0.13.05.recipe

75 lines
2.3 KiB
Bash

SUMMARY="Stress test a computer system in various selectable ways"
DESCRIPTION="stress-ng will stress test a computer system in various \
selectable ways. It was designed to exercise various physical subsystems of a \
computer as well as the various operating system kernel interfaces.
Stress-ng features:
* Over 240 stress tests
* 78 CPU specific stress tests that exercise floating point, integer, bit \
manipulation and control flow
* Over 20 virtual memory stress tests
stress-ng was originally intended to make a machine work hard and trip \
hardware issues such as thermal overruns as well as operating system bugs \
that only occur when a system is being thrashed hard. Use stress-ng with \
caution as some of the tests can make a system run hot on poorly designed \
hardware and also can cause excessive system thrashing which may be difficult \
to stop.
stress-ng can also measure test throughput rates; this can be useful to \
observe performance changes across different operating system releases or \
types of hardware. However, it has never been intended to be used as a \
precise benchmark test suite, so do NOT use it in this manner.
Running stress-ng with root privileges will adjust out of memory settings on \
Linux systems to make the stressors unkillable in low memory situations, so \
use this judiciously. With the apropriate privilege, stress-ng can allow the \
ionice class and ionice levels to be adjusted, again, this should be used \
with care.
One can specify the number of processes to invoke per type of stress test; \
specifying a negative or zero value will select the number of online \
processors as defined by sysconf(_SC_NPROCESSORS_ONLN)."
HOMEPAGE="https://kernel.ubuntu.com/~cking/stress-ng/"
COPYRIGHT="2013-2021 Colin Ian King"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://github.com/ColinIanKing/stress-ng/archive/V$portVersion.zip"
SOURCE_DIR="stress-ng-$portVersion"
CHECKSUM_SHA256="442c07327c5534566670a85dc67d50b1c643250aa09cc7129c793705d294cbeb"
ARCHITECTURES="all !x86_gcc2"
PROVIDES="
stress_ng = $portVersion
cmd:stress_ng = $portVersion
"
REQUIRES="
haiku
gcc_syslibs
lib:libz
"
BUILD_REQUIRES="
haiku_devel
devel:libz
"
BUILD_PREREQUIRES="
cmd:awk
cmd:gcc
cmd:make
"
BUILD()
{
touch config
make -f Makefile.config
make $jobArgs
}
INSTALL()
{
mkdir -p $binDir
cp stress-ng $binDir
}