Share this page
Share this page E-mail this page Print this page RSS feeds
Home > Publications > A Deterministic Multi-Way Rendezvous Library for Haskell
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.

ipdps_haskell_multiway.pdf
PDF file

In: IEEE International Parallel and Distributed Processing Symposium (IPDPS)

Publisher: IEEE Computer Society
Copyright © 2007 IEEE. Reprinted from IEEE Computer Society. This material is posted here with permission of the IEEE. Internal or personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution must be obtained from the IEEE by writing to pubs-permissions@ieee.org. By choosing to view this document, you agree to all provisions of the copyright laws protecting it.

Details

Type: Proceedings