dune-fem  2.4.1-rc
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
parDG_MPI::pardg::CommunicatorThreaded Class Reference
Inheritance diagram for parDG_MPI::pardg::CommunicatorThreaded:
Inheritance graph

Public Member Functions

 CommunicatorThreaded (int argc, char *argv[])
 
virtual void start_communication (const char comment[]="")
 
virtual bool finish_communication ()
 
void set_output (std::ostream &os)
 
void set_io_version (int version)
 
void set_unsafe ()
 
int id () const
 
int size () const
 
int master () const
 
bool all_read (int i) const
 
bool rb_empty (int i) const
 
template<class T >
void put (int dest, const T &content)
 
template<class T >
void put (int dest, const T *content, int num)
 
template<class T >
void put_all (const T &content)
 
template<class T >
void put_all (const T *content, int num)
 
template<class T >
void get (int source, T &content)
 
template<class T >
void get (int source, T *content, int num)
 
void send_request (int dest)
 
void receive_request (int source)
 
void send_receive_request (int process)
 
void send_request_all ()
 
void receive_request_all ()
 
void send_receive_request_all ()
 
bool start_and_finish_communication (const char comment[]="")
 
void barrier ()
 
void reset_buffers ()
 
void allreduce (int n, double *in, double *out, MPI_Op op)
 
void allreduce (int n, int *in, int *out, MPI_Op op)
 
 operator MPI_Comm & ()
 
 operator MPI_Comm * ()
 
double time () const
 
void timers (double &run, double &idle, double &comm) const
 
void reset_timers ()
 
void write (const char filename[])
 
int read (const char filename[], int cycle)
 

Static Public Member Functions

static Communicatorinstance ()
 

Static Public Attributes

static const int perm_threshold = 1000
 

Protected Member Functions

virtual void run ()
 
void write1 (const char filename[])
 
int read1 (const char filename[], int cycle)
 
void write2 (const char filename[])
 
int read2 (const char filename[], int cycle)
 
void inc_tag ()
 

Protected Attributes

MPI_Comm comm
 
int _id
 
int num_of_processes
 
int _io_version
 
SendBuffersend_buffer
 
ReceiveBufferreceive_buffer
 
bool * sreq
 
bool * rreq
 
MPI_Request * mpi_send_request
 
MPI_Request * mpi_receive_request
 
int num_send
 
int num_recv
 
Timer timer
 
double idle_time
 
double comm_time
 
double comm_start
 
double start_time
 
int counter
 
int tag
 
std::ostream * os
 
Random rng
 
int * perm
 
bool safe_communication
 

Static Protected Attributes

static const int min_tag = 0
 
static const int max_tag = 10000
 

Constructor & Destructor Documentation

parDG_MPI::pardg::CommunicatorThreaded::CommunicatorThreaded ( int  argc,
char *  argv[] 
)

Member Function Documentation

bool parDG_MPI::pardg::Communicator::all_read ( int  i) const
inlineinherited
void parDG_MPI::pardg::Communicator::allreduce ( int  n,
double *  in,
double *  out,
MPI_Op  op 
)
inlineinherited
void parDG_MPI::pardg::Communicator::allreduce ( int  n,
int *  in,
int *  out,
MPI_Op  op 
)
inlineinherited
void parDG_MPI::pardg::Communicator::barrier ( )
inlineinherited
virtual bool parDG_MPI::pardg::CommunicatorThreaded::finish_communication ( )
virtual

Reimplemented from parDG_MPI::pardg::Communicator.

template<class T >
void parDG_MPI::pardg::Communicator::get ( int  source,
T &  content 
)
inlineinherited
template<class T >
void parDG_MPI::pardg::Communicator::get ( int  source,
T *  content,
int  num 
)
inlineinherited
int parDG_MPI::pardg::Communicator::id ( ) const
inlineinherited
void parDG_MPI::pardg::Communicator::inc_tag ( )
inlineprotectedinherited
static Communicator& parDG_MPI::pardg::Communicator::instance ( )
inlinestaticinherited
int parDG_MPI::pardg::Communicator::master ( ) const
inlineinherited
parDG_MPI::pardg::Communicator::operator MPI_Comm & ( )
inlineinherited
parDG_MPI::pardg::Communicator::operator MPI_Comm * ( )
inlineinherited
template<class T >
void parDG_MPI::pardg::Communicator::put ( int  dest,
const T &  content 
)
inlineinherited
template<class T >
void parDG_MPI::pardg::Communicator::put ( int  dest,
const T *  content,
int  num 
)
inlineinherited
template<class T >
void parDG_MPI::pardg::Communicator::put_all ( const T &  content)
inlineinherited
template<class T >
void parDG_MPI::pardg::Communicator::put_all ( const T *  content,
int  num 
)
inlineinherited
bool parDG_MPI::pardg::Communicator::rb_empty ( int  i) const
inlineinherited
int parDG_MPI::pardg::Communicator::read ( const char  filename[],
int  cycle 
)
inherited
int parDG_MPI::pardg::Communicator::read1 ( const char  filename[],
int  cycle 
)
protectedinherited
int parDG_MPI::pardg::Communicator::read2 ( const char  filename[],
int  cycle 
)
protectedinherited
void parDG_MPI::pardg::Communicator::receive_request ( int  source)
inlineinherited
void parDG_MPI::pardg::Communicator::receive_request_all ( )
inlineinherited
void parDG_MPI::pardg::Communicator::reset_buffers ( )
inherited
void parDG_MPI::pardg::Communicator::reset_timers ( )
inherited
virtual void parDG_MPI::pardg::CommunicatorThreaded::run ( )
protectedvirtual
void parDG_MPI::pardg::Communicator::send_receive_request ( int  process)
inlineinherited
void parDG_MPI::pardg::Communicator::send_receive_request_all ( )
inlineinherited
void parDG_MPI::pardg::Communicator::send_request ( int  dest)
inlineinherited
void parDG_MPI::pardg::Communicator::send_request_all ( )
inlineinherited
void parDG_MPI::pardg::Communicator::set_io_version ( int  version)
inherited
void parDG_MPI::pardg::Communicator::set_output ( std::ostream &  os)
inherited
void parDG_MPI::pardg::Communicator::set_unsafe ( )
inherited
int parDG_MPI::pardg::Communicator::size ( ) const
inlineinherited
bool parDG_MPI::pardg::Communicator::start_and_finish_communication ( const char  comment[] = "")
inherited
virtual void parDG_MPI::pardg::CommunicatorThreaded::start_communication ( const char  comment[] = "")
virtual

Reimplemented from parDG_MPI::pardg::Communicator.

double parDG_MPI::pardg::Communicator::time ( ) const
inlineinherited
void parDG_MPI::pardg::Communicator::timers ( double &  run,
double &  idle,
double &  comm 
) const
inherited
void parDG_MPI::pardg::Communicator::write ( const char  filename[])
inherited
void parDG_MPI::pardg::Communicator::write1 ( const char  filename[])
protectedinherited
void parDG_MPI::pardg::Communicator::write2 ( const char  filename[])
protectedinherited

Member Data Documentation

int parDG_MPI::pardg::Communicator::_id
protectedinherited
int parDG_MPI::pardg::Communicator::_io_version
protectedinherited
MPI_Comm parDG_MPI::pardg::Communicator::comm
protectedinherited
double parDG_MPI::pardg::Communicator::comm_start
protectedinherited
double parDG_MPI::pardg::Communicator::comm_time
protectedinherited
int parDG_MPI::pardg::Communicator::counter
protectedinherited
double parDG_MPI::pardg::Communicator::idle_time
protectedinherited
const int parDG_MPI::pardg::Communicator::max_tag = 10000
staticprotectedinherited
const int parDG_MPI::pardg::Communicator::min_tag = 0
staticprotectedinherited
MPI_Request * parDG_MPI::pardg::Communicator::mpi_receive_request
protectedinherited
MPI_Request* parDG_MPI::pardg::Communicator::mpi_send_request
protectedinherited
int parDG_MPI::pardg::Communicator::num_of_processes
protectedinherited
int parDG_MPI::pardg::Communicator::num_recv
protectedinherited
int parDG_MPI::pardg::Communicator::num_send
protectedinherited
std::ostream* parDG_MPI::pardg::Communicator::os
protectedinherited
int* parDG_MPI::pardg::Communicator::perm
protectedinherited
const int parDG_MPI::pardg::Communicator::perm_threshold = 1000
staticinherited
ReceiveBuffer* parDG_MPI::pardg::Communicator::receive_buffer
protectedinherited
Random parDG_MPI::pardg::Communicator::rng
protectedinherited
bool * parDG_MPI::pardg::Communicator::rreq
protectedinherited
bool parDG_MPI::pardg::Communicator::safe_communication
protectedinherited
SendBuffer* parDG_MPI::pardg::Communicator::send_buffer
protectedinherited
bool* parDG_MPI::pardg::Communicator::sreq
protectedinherited
double parDG_MPI::pardg::Communicator::start_time
protectedinherited
int parDG_MPI::pardg::Communicator::tag
protectedinherited
Timer parDG_MPI::pardg::Communicator::timer
protectedinherited

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