Coshed-bench is a project mainly written in C and SHELL, based on the View license.
Shootout of cooperative scheduling strategies
To use::
mkdir yoursystem cd yoursystem
uname -a >uname.txt gcc --version >compiler.txt sysctl -a >sysctl-a.txt cat /proc/cpuinfo >cpuinfo.txt
ln -s ../.c ../.h ../*.sh .
./genm.sh # this generates a Makefile
make # this build the programs
./runb.sh # this runs the programs and generates .log files
./genres.sh # this compiles *.log into results.txt
For additional results, you can check out the modified PCL library with::
git clone git://github.com/knz/pcl.git (cd pcl && git checkout coshed-bench-fixups)
Then configure and build PCL in one or more of the following ways::
mkdir pcl_sigjmp_64 && cd pcl_sigjmp_64 && ../../pcl/configure CPPFLAGS=-DFORCE_SIGJMP CC="gcc -m64" && make
mkdir pcl_sigcontext_64 && cd pcl_sigcontext_64 && ../../pcl/configure CPPFLAGS=-DFORCE_SIGCONTEXT CC="gcc -m64" && make
mkdir pcl_ucontext_64 && cd pcl_ucontext_64 && ../../pcl/configure CC="gcc -m64" && make
mkdir pcl_sigjmp_32 && cd pcl_sigjmp_32 && ../../pcl/configure CPPFLAGS=-DFORCE_SIGJMP CC="gcc -m32" && make
mkdir pcl_sigcontext_32 && cd pcl_sigcontext_32 && ../../pcl/configure CPPFLAGS=-DFORCE_SIGCONTEXT CC="gcc -m32" && make
mkdir pcl_ucontext_32 && cd pcl_ucontext_32 && ../../pcl/configure CC="gcc -m32" && make
Then run ./genm.sh
again and then make
.