Title :
A deterministic multi-way rendezvous library for haskell
Author :
Vasudevan, Nalini ; Edwards, Stephen A. ; Singh, Satnam
Author_Institution :
Dept. of Comput. Sci., Columbia Univ. New York, Columbia, NY
Abstract :
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.
Keywords :
functional languages; libraries; multi-threading; multiprocessing systems; Haskell functional language; SHIM communication model; asynchronous communication; concurrent programming languages; debugging techniques; multi threaded language; multi way rendezvous library; multicore processors; transactional memory; Computer languages; Computer science; Concurrent computing; Debugging; Multicore processing; Programming environments; Programming profession; Software libraries; System recovery; Timing;
Conference_Titel :
Parallel and Distributed Processing, 2008. IPDPS 2008. IEEE International Symposium on
Conference_Location :
Miami, FL
Print_ISBN :
978-1-4244-1693-6
Electronic_ISBN :
1530-2075
DOI :
10.1109/IPDPS.2008.4536312