2008 Articles
A Deterministic Multi-Way Rendezvous Library for Haskell
The advent of multicore processors requires mainstream concurrent programming languages with high level concurrency constructs and effective debugging techniques. Unfortunately, many concurrent programming languages are non-deterministic and allow data races. We present a deterministic concurrent communication library for an existing multi-threaded language. We implemented the SHIM communication model in the Haskell functional language, which supports asynchronous communication and transactional memory. The SHIM model uses multi-way rendezvous to guarantee determinism. We describe two implementations of the model in Haskell, demonstrating the ease of writing such a library. We illustrate our library with examples and experimentally compare two implementations. We also compare our new model with equivalent sequential programs and parallel versions using Haskell's existing concurrency mechanisms.
Subjects
Files
- vasudevan2008deterministic.pdf application/pdf 122 KB Download File
Also Published In
- Title
- 2008 IEEE International Symposium on Parallel & Distributed Processing: Miami, FL, 14-18 April 2008
- Publisher
- IEEE
- DOI
- https://doi.org/10.1109/IPDPS.2008.4536312
More About This Work
- Academic Units
- Computer Science
- Published Here
- September 20, 2011