CHESS Implementation

Implement CHESS on Linux/Pthreads, by writing wrappers over pthread library functions. Write 20 small concurrent programs with different concurrency patterns and test it using stress-testing and ``chess-testing''. Draw conclusions about which types of programs report bugs faster using stress-testing, and which report bugs faster using chess-testing. Measure the time taken and the average number of schedules enumerated before a bug was found in each case. Also, discuss the effect of your optimizations/features in CHESS (e.g., happens-before graph, pruning, etc.).

Due date: 20 September 2013

Resources