Madeleine: An Efficient and Portable Communication Interface for RPC-based Multithreaded Environments
Abstract
We introduce MADELEINE, a communication interface specifically designed to support distributed, multithreaded applications in both a portable and efficient way. Thanks to its new API, MADELEINE can implement RPC operations without any extra copy with respect to the underlying protocol. MADELEINE can thus achieve very good performance on a variety of protocols (MPI, TCP, BIP, VIA, etc.) and networks (Fast-Ethernet, Myrinet, SCI, etc.). MADELEINE serves as a building block for the multithread programming environment PM2. We provide detailed experimental results for each representat- ive implementation and discuss a number of possible improvements.