AQUAgpusph 4.1.2
|
Synchronize arrays between processes. More...
#include <CalcServer/MPISync.h>
Public Member Functions | |
Receiver (const std::string name, InputOutput::ArrayVariable *mask, const std::vector< InputOutput::ArrayVariable * > fields, const std::vector< void * > field_hosts, const unsigned int proc, InputOutput::UIntVariable *n_offset) | |
~Receiver () | |
void | execute (void) |
Receive the information. | |
Public Member Functions inherited from Aqua::CalcServer::MPISync::Exchanger | |
Exchanger (const std::string name, InputOutput::ArrayVariable *mask, const std::vector< InputOutput::ArrayVariable * > fields, const std::vector< void * > field_hosts, const unsigned int proc) | |
~Exchanger () | |
const std::string | name () |
Parent tool name. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Aqua::CalcServer::MPISync::Exchanger | |
static const MPIType | typeToMPI (std::string t) |
MPI type descriptor. | |
Protected Attributes inherited from Aqua::CalcServer::MPISync::Exchanger | |
InputOutput::ArrayVariable * | _mask |
Mask. | |
std::vector< InputOutput::ArrayVariable * > | _fields |
Field. | |
unsigned int | _proc |
Processor. | |
unsigned int | _n |
Total number of elements. | |
std::vector< void * > | _fields_host |
Host memory arrays to download, send, receive and upload the data. | |
Synchronize arrays between processes.
Aqua::CalcServer::MPISync::Receiver::Receiver | ( | const std::string | name, |
InputOutput::ArrayVariable * | mask, | ||
const std::vector< InputOutput::ArrayVariable * > | fields, | ||
const std::vector< void * > | field_hosts, | ||
const unsigned int | proc, | ||
InputOutput::UIntVariable * | n_offset | ||
) |
Constructor
name | The same name that the owner tool (See Aqua::CalcServer::MPISync) |
mask | Incoming data process mask |
fields | Fields to store the incoming data |
field_hosts | Allocated host memory to temporary copy the incoming data, which will be uploaded to the computational device afterwards |
proc | Process from which the data shall be received |
n_offset | Variable where the number of already received particles should be stored. |
Aqua::CalcServer::MPISync::Receiver::~Receiver | ( | ) |
Destructor.
void Aqua::CalcServer::MPISync::Receiver::execute | ( | void | ) |
Receive the information.