blob: 79ec3281c27ba11028447868c3aea2957f04a32f [file] [log] [blame]
This file contains various information.
Please refer to http://nptl.bullopensource.org/phpBB/ for general information
and questions. Feel free to post your questions there.
----------------------------------- COMPILATION -----------------------------------
We are doing our best to ensure the test case will be very portable.
Please report any problems on the forum (see on top of this file)
* Flags
You may want to add -DVERBOSE=2 to have verbose tests,
or -DVERBOSE=0 to have silent tests (for batchs for example).
You may want to add -DSCALABILITY_FACTOR=X, where X is an integer,
to change the stress programs load (default is 1).
* Commands
Compilation under linux:
gcc -o <bin> -lpthread <source>
where <bin> is the executable you want to build and <source> is the source file.
Compilation under AIX5L
cc -o <bin> -lpthread <source>
same comment as above
Compilation under Solaris 9 (gcc: http://www.sunfreeware.com)
gcc -std=gnu99 -lpthread -lrt -o <bin> <source>
same comment as above.
Note: the -lrt is necessary for test cases using semaphore feature.
* Execution
Please consider the following:
-> I am sizing the tests to fit on a bi-xeon IA32 machine, with 2GB RAM.
You can change the SCALABILITY_FACTOR value to 2 or 3 to be more
resources consuming on a bigger system. This will create more threads,
etc... according to each case.
-> Stress tests will run until they are killed with SIGUSR1 (or they
fail). Currently, I do
$> ./stress &
and then after a while
$> kill -USR1 <pid>
or
$> for PR in `ps o pid --no-headers -Cstress`; \
do echo Sending SIGUSR1 to pid $PR...; \
kill -USR1 $PR; \
done;
Some cases will keep on executing ~ 1 minute after they receive the
signal; it is normal (time for stopping all threads).