Home > coshed-bench

coshed-bench

Coshed-bench is a project mainly written in C and SHELL, based on the View license.

Shootout of cooperative scheduling strategies

Benchmark for cooperative scheduling primitives

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.