libMesh
Classes | Namespaces | Typedefs | Functions | Variables
parallel.h File Reference

Go to the source code of this file.

Classes

class  libMesh::Parallel::DataPlusInt< T >
 Types combined with an int. More...
 
struct  libMesh::Parallel::data_type
 
struct  libMesh::Parallel::request
 
struct  libMesh::Parallel::status
 
class  libMesh::Parallel::MessageTag
 Encapsulates the MPI tag integers. More...
 
class  libMesh::Parallel::DataType
 Encapsulates the MPI_Datatype. More...
 
struct  libMesh::Parallel::false_type
 
struct  libMesh::Parallel::dependent_false< T >
 
class  libMesh::Parallel::StandardType< T >
 Templated class to provide the appropriate MPI datatype for use with built-in C types or simple C++ constructions. More...
 
class  libMesh::Parallel::OpFunction< T >
 Templated class to provide the appropriate MPI reduction operations for use with built-in C types or simple C++ constructions. More...
 
struct  libMesh::Parallel::Attributes< T >
 
class  libMesh::Parallel::Status
 Encapsulates the MPI_Status struct. More...
 
struct  libMesh::Parallel::PostWaitWork
 A class that can be subclassed to allow other code to perform work after a MPI_Wait succeeds. More...
 
class  libMesh::Parallel::Request
 Encapsulates the MPI_Request. More...
 
class  libMesh::Parallel::Packing< T >
 Define data types and (un)serialization functions for use when encoding a potentially-variable-size object of type T. More...
 
class  libMesh::Parallel::Communicator
 Encapsulates the MPI_Comm object. More...
 
class  libMesh::Parallel::FakeCommunicator
 
struct  libMesh::Parallel::PostWaitCopyBuffer< Container, OutputIter >
 
struct  libMesh::Parallel::PostWaitUnpackBuffer< Container, Context, OutputIter, T >
 
struct  libMesh::Parallel::PostWaitDeleteBuffer< Container >
 

Namespaces

 libMesh
 The libMesh namespace provides an interface to certain functionality in the library.
 
 libMesh::Parallel
 The Parallel namespace is for wrapper functions for common general parallel synchronization tasks.
 

Typedefs

typedef MPI_Datatype libMesh::Parallel::data_type
 Data types for communication. More...
 
typedef MPI_Request libMesh::Parallel::request
 Request object for non-blocking I/O. More...
 
typedef MPI_Status libMesh::Parallel::status
 Status object for querying messages. More...
 
typedef MPI_Comm libMesh::Parallel::communicator
 Communicator object for talking with subsets of processors. More...
 

Functions

template<typename T >
data_type libMesh::Parallel::dataplusint_type ()
 Templated function to return the appropriate MPI datatype for use with built-in C types when combined with an int. More...
 
Status libMesh::Parallel::wait (Request &r)
 Wait for a non-blocking send or receive to finish. More...
 
void libMesh::Parallel::wait (std::vector< Request > &r)
 Wait for a non-blocking send or receive to finish. More...
 
template<typename Context , typename buffertype , typename OutputIter , typename T >
void libMesh::Parallel::unpack_range (const typename std::vector< buffertype > &buffer, Context *context, OutputIter out, const T *output_type)
 Decode a range of potentially-variable-size objects from a data array. More...
 
template<typename Context , typename buffertype , typename Iter >
Iter libMesh::Parallel::pack_range (const Context *context, Iter range_begin, const Iter range_end, typename std::vector< buffertype > &buffer, std::size_t approx_buffer_size=1000000)
 Encode a range of potentially-variable-size objects to a data array. More...
 
template<typename Context , typename Iter >
std::size_t libMesh::Parallel::packed_range_size (const Context *context, Iter range_begin, const Iter range_end)
 Return the total buffer size needed to encode a range of potentially-variable-size objects to a data array. More...
 

Variables

const unsigned int libMesh::Parallel::any_source
 Accept from any source. More...
 
const MessageTag libMesh::Parallel::any_tag = MessageTag(MPI_ANY_TAG)
 Default message tag ids. More...
 
const MessageTag libMesh::Parallel::no_tag = MessageTag(0)
 
Parallel::FakeCommunicator libMesh::CommWorld
 The default libMesh communicator. More...