ESyS-Particle
4.0.1
|
Buffer for MPI scatter/gather, root component. More...
#include <mpisgbuf.h>
Public Member Functions | |
CMPISGBufferRoot (MPI_Comm, int) | |
virtual void | clear () |
virtual void | gather () |
virtual void | scatter () |
virtual void | append (int, int) |
virtual void | append (double, int) |
virtual void | append (const char *, int) |
virtual int | pop_int (int) |
virtual double | pop_double (int) |
virtual void | pop_doubles (int, double *, int) |
![]() | |
AMPISGBufferRoot (MPI_Comm) | |
virtual void | append (const Vec3 &, int) |
virtual Vec3 | pop_vector (int) |
const MPI_Status & | status () |
Additional Inherited Members | |
![]() | |
MPI_Comm | m_comm |
the MPI communicator used for the scatter/gather operations | |
int | m_rank |
the rank in this communicator | |
int | m_size |
size of the communicator | |
int | m_int_increment |
int | m_dbl_increment |
the "packing size" of int/double | |
MPI_Status | m_status |
Buffer for MPI scatter/gather, root component.
CMPISGBufferRoot::CMPISGBufferRoot | ( | MPI_Comm | comm, |
int | buffersize | ||
) |
Constructor for CMPISGBufferRoot
comm | the MPI communicator |
buffersize | buffer size per slice |
References AMPISGBufferRoot::m_size.
|
virtual |
Append an integer to a given slice of the buffer.
i | the integer |
nslice | the nr. of the slice |
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_size.
|
virtual |
Append an double to a given slice of the buffer.
d | the double |
nslice | the nr. of the slice |
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_size.
|
virtual |
Append an C string (char*) to a given slice of the buffer.
str | the string |
nslice | the nr. of the slice |
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_size.
|
virtual |
Get data from all other members of the communicator, using MPI_Gather
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_rank.
Referenced by CLatticeMaster::checkNeighbors().
|
virtual |
Pops an double from a given slice of the the buffer.
nslice | the nr. of the slice |
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm.
|
virtual |
Pops an integer from a given slice of the the buffer, i.e. it pops the last sizeof(MPI_INT) bytes of the buffer, interpreting them as an int.
nslice | the nr. of the slice |
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_size.
Referenced by CLatticeMaster::checkNeighbors().
|
virtual |
Send data to all other members of the communicator, using MPI_Scatter
Implements AMPISGBufferRoot.
References AMPISGBufferRoot::m_comm, and AMPISGBufferRoot::m_rank.