PM2
Encyclopedia
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
Branch and bound
Branch and bound is a general algorithm for finding optimal solutions of various optimization problems, especially in discrete and combinatorial optimization...

 search, computation on sparse matrices, etc.) on distributed architectures. It is distributed under the GPL.

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
MIMD
In computing, MIMD is a technique employed to achieve parallelism. Machines using MIMD have a number of processors that function asynchronously and independently. At any time, different processors may be executing different instructions on different pieces of data...

 machines at one end of the spectrum, or as a support for metacomputing
Metacomputing
Metacomputing is all computing and computing-oriented activity which involves computing knowledge utilized for the research, development and application of different types of computing. It may also deal with numerous types of computing applications, such as: industry, business, management and...

 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
Thread (computer science)
In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...

 management subsystem of PM2 is called Marcel (named after Marcel Proust
Marcel Proust
Valentin Louis Georges Eugène Marcel Proust was a French novelist, critic, and essayist best known for his monumental À la recherche du temps perdu...

) and its communication subsystem Madeleine
Madeleine
The madeleine or petite madeleine is a traditional small cake from Commercy and Liverdun, two communes of the Lorraine region in northeastern France....

, a French sweet that supposedly played a central role in the life of Marcel Proust
Marcel Proust
Valentin Louis Georges Eugène Marcel Proust was a French novelist, critic, and essayist best known for his monumental À la recherche du temps perdu...

. 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
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...

platforms.

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.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK