PEARL
Parallel Event Access and Replay Library
List of all members
pearl::AmRuntime Class Reference

Active message runtime class. More...

#include <pearl/AmRuntime.h>

Inheritance diagram for pearl::AmRuntime:
pearl::uncopyable::Uncopyable

Public Member Functions

AmRuntime progress
size_t advance ()
 
void wait ()
 
void wait (const Communicator &comm)
 
void allfence ()
 
void fence (const Communicator &comm)
 
Accessing runtime parameters
void setCbdata (CallbackData *data)
 
CallbackDatagetCbdata () const
 
void setCbmanager (const CallbackManager &cbmanager)
 
const CallbackManagergetCbmanager () const
 
Message handling
void attach (AmHandler &handler)
 
void enqueue (AmRequest::Ptr request)
 
void startListen (const Communicator &comm)
 
void stopListen (const Communicator &comm)
 
Runtime information
void printSummary ()
 

AmRuntime creation & destruction

static AmRuntimegetInstance ()
 
void shutdown ()
 

Detailed Description

This class implements the core runtime environment for the active messaging framework. It is designed as a singleton so an application can have only one runtime object at any time. The runtime uses three different classes to implement its active message scheme. An AmRequest object is used to send data to a remote location. An AmListener object is used to probe for and receive messages on the remote location. Handler classes are used to pack the initial message buffers on the origin side and to unpack and execute their business logic on the target side.

Note
It is the users responsibility to register Listener objects on the target location that are capable of receiving requests that injected into the system on any of the origin locations.

Member Function Documentation

◆ advance()

size_t pearl::AmRuntime::advance ( )

◆ allfence()

void pearl::AmRuntime::allfence ( )

◆ attach()

void pearl::AmRuntime::attach ( AmHandler handler)

◆ enqueue()

void pearl::AmRuntime::enqueue ( AmRequest::Ptr  request)

◆ fence()

void pearl::AmRuntime::fence ( const Communicator comm)

◆ getCbdata()

CallbackData* pearl::AmRuntime::getCbdata ( ) const

◆ getCbmanager()

const CallbackManager& pearl::AmRuntime::getCbmanager ( ) const

◆ getInstance()

static AmRuntime& pearl::AmRuntime::getInstance ( )
static

◆ printSummary()

void pearl::AmRuntime::printSummary ( )

◆ setCbdata()

void pearl::AmRuntime::setCbdata ( CallbackData data)

◆ setCbmanager()

void pearl::AmRuntime::setCbmanager ( const CallbackManager cbmanager)

◆ shutdown()

void pearl::AmRuntime::shutdown ( )

◆ startListen()

void pearl::AmRuntime::startListen ( const Communicator comm)

◆ stopListen()

void pearl::AmRuntime::stopListen ( const Communicator comm)

◆ wait() [1/2]

void pearl::AmRuntime::wait ( )

◆ wait() [2/2]

void pearl::AmRuntime::wait ( const Communicator comm)

The documentation for this class was generated from the following file:

Scalasca    Copyright © 1998–2019 Forschungszentrum Jülich GmbH, Jülich Supercomputing Centre
Copyright © 2009–2015 German Research School for Simulation Sciences GmbH, Laboratory for Parallel Programming