Jive reference manual
|
This namespace provides support for building parallel message passing programs. More...
Namespaces | |
mt | |
uni | |
Classes | |
class | AbortException |
class | BcastReader |
class | BcastStream |
class | Buffer |
class | Context |
class | Driver |
class | DriverException |
class | DriverFactory |
class | GatherPrinter |
class | GatherStream |
class | InputChannel |
class | MPException |
class | MPIContext |
class | MPIDriver |
class | MTContext |
class | MTDriver |
class | OutputChannel |
class | Port |
class | RecvBuffer |
class | Request |
class | RequestList |
class | SendBuffer |
class | SimpleTask |
class | SimpleTaskFactory |
class | Status |
class | StdDriverFactory |
class | SyncTimer |
class | Task |
class | TaskFactory |
class | UniContext |
class | UniDriver |
class | XPacket |
Typedefs | |
typedef void(* | TaskFunc) (const Ref< Context > &ctx, int argc, char **argv) |
typedef util::Pair< int, int > | IntPair |
typedef util::Pair< double, int > | DoubleInt |
Enumerations | |
enum | Opcode { SUM, PROD, MIN, MAX, BOR, BAND, LOR, LAND } |
enum | { OPCODE_COUNT = LAND + 1 } |
enum | Type { NO_TYPE, BYTE, CHAR, SHORT, INT, LINT, FLOAT, DOUBLE, INT_PAIR, DOUBLE_INT } |
enum | { TYPE_COUNT = DOUBLE_INT + 1 } |
Functions | |
void | sendRankError (const String &context, int rank, int procCount) |
void | recvRankError (const String &context, int rank, int procCount) |
void | sendTagError (const String &context, int tag) |
void | recvTagError (const String &context, int tag) |
void | swap (XPacket &lhs, XPacket &rhs) |
void | exchange (Context &ctx, Array< XPacket > &recvPackets, const Array< XPacket > &sendPackets) |
const char * | opcodeName (int op) |
void | startTasks (TaskFunc func, int argc, char **argv) |
void | startTasks (TaskFactory &factory, int argc, char **argv) |
int | sizeOf (Type t) |
const char * | typeName (int t) |
Type | getType (byte *) |
Type | getType (char *) |
Type | getType (short *) |
Type | getType (int *) |
Type | getType (lint *) |
Type | getType (float *) |
Type | getType (double *) |
Type | getType (IntPair *) |
Type | getType (DoubleInt *) |
template<class T > | |
void | send (Context &ctx, const T &val, int rank, int tag=DEFAULT_TAG) |
template<class T > | |
void | send (Context &ctx, const T *buf, idx_t len, int rank, int tag=DEFAULT_TAG) |
template<class T > | |
void | recv (Context &ctx, T &val, int rank, int tag=DEFAULT_TAG, Status *stat=0) |
template<class T > | |
void | recv (Context &ctx, T *buf, idx_t len, int rank, int tag=DEFAULT_TAG, Status *stat=0) |
template<class T > | |
T | allreduce (Context &ctx, const T &val, Opcode op) |
template<class T > | |
T | allmax (Context &ctx, const T &val) |
template<class T > | |
T | allmin (Context &ctx, const T &val) |
template<class T > | |
T | allsum (Context &ctx, const T &val) |
Variables | |
static const int | DEFAULT_TAG = 0 |
static const int | ANY_TAG = -1 |
static const int | ANY_SOURCE = -1 |
const Status | EMPTY_STATUS |
const int | TYPE_SIZES [TYPE_COUNT] |
The namespace jem::mp exports a framework for building parallel message passing programs.
All classes and functions in this namespace can be found in the package jem.mp.
typedef util::Pair<int,int> jem::mp::IntPair |
typedef util::Pair<double,int> jem::mp::DoubleInt |
enum jem::mp::Opcode |
enum jem::mp::Type |
void jem::mp::sendRankError | ( | const String & | context, |
int | rank, | ||
int | procCount | ||
) |
void jem::mp::recvRankError | ( | const String & | context, |
int | rank, | ||
int | procCount | ||
) |
void jem::mp::sendTagError | ( | const String & | context, |
int | tag | ||
) |
void jem::mp::recvTagError | ( | const String & | context, |
int | tag | ||
) |
void jem::mp::exchange | ( | Context & | ctx, |
Array< XPacket > & | recvPackets, | ||
const Array< XPacket > & | sendPackets | ||
) |
const char* jem::mp::opcodeName | ( | int | op | ) |
void jem::mp::startTasks | ( | TaskFunc | func, |
int | argc, | ||
char ** | argv | ||
) |
void jem::mp::startTasks | ( | TaskFactory & | factory, |
int | argc, | ||
char ** | argv | ||
) |
int jem::mp::sizeOf | ( | Type | t | ) |
const char* jem::mp::typeName | ( | int | t | ) |
Type jem::mp::getType | ( | byte * | ) |
Type jem::mp::getType | ( | char * | ) |
Type jem::mp::getType | ( | short * | ) |
Type jem::mp::getType | ( | int * | ) |
Type jem::mp::getType | ( | lint * | ) |
Type jem::mp::getType | ( | float * | ) |
Type jem::mp::getType | ( | double * | ) |
void jem::mp::send | ( | Context & | ctx, |
const T & | val, | ||
int | rank, | ||
int | tag = DEFAULT_TAG |
||
) |
void jem::mp::send | ( | Context & | ctx, |
const T * | buf, | ||
idx_t | len, | ||
int | rank, | ||
int | tag = DEFAULT_TAG |
||
) |
void jem::mp::recv | ( | Context & | ctx, |
T & | val, | ||
int | rank, | ||
int | tag = DEFAULT_TAG , |
||
Status * | stat = 0 |
||
) |
void jem::mp::recv | ( | Context & | ctx, |
T * | buf, | ||
idx_t | len, | ||
int | rank, | ||
int | tag = DEFAULT_TAG , |
||
Status * | stat = 0 |
||
) |
T jem::mp::allmax | ( | Context & | ctx, |
const T & | val | ||
) |
T jem::mp::allmin | ( | Context & | ctx, |
const T & | val | ||
) |
T jem::mp::allsum | ( | Context & | ctx, |
const T & | val | ||
) |
|
static |
|
static |
|
static |
const Status jem::mp::EMPTY_STATUS |
const int jem::mp::TYPE_SIZES[TYPE_COUNT] |