Madeleine: A generic optimizing library for high performance networks

Runtime

LaBRI, INRIA Bordeaux - Sud-Ouest

High Performance Runtime Systems for Parallel Architectures

The following software is deprecated and unmaintained.

Download

Powered By GForge Collaborative Development Environment

» Madeleine files are now hosted as part of the PM2 project at gforge.

NewMadeleine

This page presents the Madeleine communication library version 3. An entirely new redesign and rewrite of the library, called NewMadeleine, is presented at the following page

Madeleine Overview

The Madeleine library was initially designed as the communication subsystem of the PM2 software suite. While still distributed as part of PM2 it may be used in any distributed computing environment. This communication library is principally dedicated to the exploitation of clusters interconnected with high-speed networks, potentially of different natures. Madeleine is a multithreaded library both in its conception (use of lightweight processes to implement some functionalities) and in its use: Madeleine's code re-entrance enables it to be used jointly with the Marcel library. Moreover, Madeleine is a multi-cluster communication library that implements a concept of communication channel that can be either physical (that is, an abstraction of a physical network) or virtual. In that latter case, it becomes possible to build virtual heterogeneous networks. Madeleine features a message forwarding mechanism that relies on gateways when permitted by the configuration (that is, when several different networking technologies are present on the same node). Madeleine is also able to dynamically select the most appropriate means to send data according to the underlying technology (multi-paradigms). This is possible by specifying constraints on data to be sent ("design by contract" concept) and provides a good performance level above technologies possibly relying on very different paradigms. Madeleine relies on external software regarding deployment, session management (the Leonie software), or exploitation of user-given information (configuration files). Madeleine is available on various networking technologies:

  • Quadrics
  • Myrinet (MX and GM)
  • SCI
  • MPI
  • TCP
  • VIA
and runs on many architectures (list is not exhaustive):
  • Linux/IA32
  • Linux/IA64
  • Linux/x86-64
  • Linux/Alpha
  • Linux/Sparc
  • Linux/PowerPC
  • MacOS/X /PowerPC
  • Solaris/Sparc
  • Solaris/IA32
  • AIX/PowerPC
  • WindowsNT/IA32
A version enabled to work inside the Linux kernel is also available. The current production version of Madeleine is version 3. This library is developed and maintained by Olivier Aumage, Elisabeth Brunet, Nathalie Furmento and Raymond Namyst. The software is freely available under the terms of the GNU General Public License version 2 at the following URL: link.

Documentation and Related Publications

Contact

For any questions regarding Madeleine, please contact Olivier Aumage.
olivier.aumage@labri.fr