- PM2
The "Parallel Multithreaded Machine" (PM2) is a
software for parallel networking of computers.PM2 is an open-source distributed multithreaded programming environment designed to support efficiently distributed programs with a highly irregular behavior (e.g.
branch and bound search, computation onsparse matrices , etc.) on distributed architectures. It is distributed under theGPL .PM2 adheres to the SPMD ("Single Program Multiple Data") programming model, in a way very similar to the
PVM and MPI communication libraries. The user writes a single program text, a copy of which is launched by a specific "load" command on each "processing node" of the current configuration. It is up to the programmer to include branching so as to differentiate between the processing nodes. This way it allows a network of heterogeneous machines to be used as a single distributed parallel processor.It is primarily designed for medium-size clusters of commodity processing nodes interconnected by high-performance networks, but nothing prevents the use on massively parallel
MIMD machines at one end of the spectrum, or as a support formetacomputing over the Internet on the other end. It supports heterogeneous networking configurations, such as sets of interconnected clusters.Distinguishing features of PM2 include its priority driven scheduling policy, its thread migration mechanisms and its ability to ease the development of various load balancing policies. It can manage several hundreds of threads on each available physical processor. The PM2 interface provides functionalities for the management of this high degree of parallelism and for dynamic load balancing.
The thread management subsystem of PM2 is called Marcel (named after
Marcel Proust ) and its communication subsystemMadeleine , a French sweet that supposedly played a central role in the life ofMarcel Proust . PM2 features an additional functionality to provide threads with a uniform access to data, whatever their physical location. It is called DSM-PM2.PM2 runs on most
Unix plataforms.Development History
PM2 is developed at LaBRI (Laboratoire Bordelais de Recherche en Informatique), a research laboratory located in Bordeaux, France, jointly supported by the INRIA, the CNRS, and the University of Bordeaux. Before that, PM2 was developed at LIP (Laboratoire de l'Informatique du Parallélisme), a research laboratory located at the ENS Lyon (Ecole Normale Supérieure de Lyon), France, jointly supported by the INRIA, the CNRS and the University Claude Bernard Lyon. PM2 was originally designed by Raymond Namyst and Jean-François Méhaut at LIFL, University of Lille, France.
References
*This article was originally based on material from the [http://runtime.futurs.inria.fr/pm2-doc/ Getting Started with PM2] article, Copyright © March 2006 Team Runtime
* [http://www.slate.com/id/2118443/ The Way the Cookie Crumbles/How much did Proust know about madeleines?] By Edmund Levin, May 11, 2005External links
* [http://runtime.futurs.inria.fr/pm2/ PM2 Project Homepage]
* [http://runtime.futurs.inria.fr/pm2-doc/ Getting Started with PM2]ee also
*
PVM
*Distributed Computing
*Parallel Computing
Wikimedia Foundation. 2010.