<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta name="robots" content="noindex"> <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>The Group Library</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body bgcolor="#ffffff"> <!-- Generated by Doxygen 1.2.5 on Mon Oct 14 14:18:08 2002 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="pages.html">Related Pages</a> </center> <hr><a name="group"><h2>The Group Library</h2></a> The group library provides three mechanisms for parallel execution and communication. These are: <p> <ul> <li> <a href="group.html#messagepassing">Message Passing</a> <li> <a href="group.html#distmemory">Distributed Shared Memory</a> <li> <a href="group.html#multithreading">Multi-Threading</a> </ul> <p> <a name="messagepassing"><h2>Message Passing</h2></a> <p> The MessageGrp class is the ancestor for classes that provide the passing of messages between processes. There are three important specializations of this class: <p> <dl compact> <p> <dt>ProcMessageGrp<dd>Provides a dummy MessageGrp for single processor case. <p> <dt>MPIMessageGrp<dd>Implements MessageGrp using the Message Passing Interface (MPI) library. <p> <dt>ShmMessageGrp<dd>Implements MessageGrp using SysV Interprocess communication. <p> </dl> <p> Due to the widespread acceptance of MPI and the large number of features that it supports, the MessageGrp specialization may one day be eliminated. <p> <a name="distmemory"><h2>Distributed Shared Memory</h2></a> <p> The MemoryGrp class is the ancestor for classes that permit access to the memory in different processes, possible on difference machines. There are two important specializations of this class: <p> <dl compact> <p> <dt>ProcMemoryGrp<dd>Provides a dummy MemoryGrp for single processor case. <p> <dt>MTMPIMemoryGrp<dd> This works reliably and efficiently, however, requires POSIX threads and a thread-safe MPI implementation. <p> </dl> <p> <a name="multithreading"><h2>Multi-Threading</h2></a> <p> The ThreadGrp class is the ancestor of classes that provide multiple-threads within a single address space. There are two important specializations of this class: <p> <dl compact> <p> <dt>ProcThreadGrp<dd>Provides a dummy ThreadGrp for the single thread case. <p> <dt>PthreadThreadGrp<dd> This is a ThreadGrp that uses POSIX threads. <p> </dl> <p> <hr> <address> <small> Generated at Mon Oct 14 14:18:08 2002 for <a href="http://aros.ca.sandia.gov/~cljanss/mpqc">MPQC</a> 2.1.2 using the documentation package <a href="http://www.stack.nl/~dimitri/doxygen/index.html">Doxygen</a> 1.2.5. </small> </address> </body> </html>