|
AQUAgpusph 5.0.4
|
Synchronize arrays between processes. More...
#include <MPISync.hpp>


Public Member Functions | |
| Receiver (const std::string name, const std::string vars_prefix, InputOutput::ArrayVariable *mask, const std::vector< InputOutput::ArrayVariable * > fields, const std::vector< void * > field_hosts, const uicl proc, InputOutput::Variable *n_offset) | |
| ~Receiver () | |
| void | execute (EventProfile *profiler) |
| Receive the information. | |
| Public Member Functions inherited from Aqua::CalcServer::MPISync::Exchanger | |
| Exchanger (const std::string name, const std::string vars_prefix, InputOutput::ArrayVariable *mask, const std::vector< InputOutput::ArrayVariable * > fields, const std::vector< void * > field_hosts, const uicl proc) | |
| ~Exchanger () | |
| const std::string | name () const |
| Parent tool name. | |
| uicl | proc () const |
| Processor. | |
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 | |
| std::string | _var_prefix |
| Variables prefix. | |
| InputOutput::ArrayVariable * | _mask |
| Mask. | |
| std::vector< InputOutput::ArrayVariable * > | _fields |
| Field. | |
| uicl | _proc |
| Processor. | |
| size_t | _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, |
| const std::string | vars_prefix, | ||
| InputOutput::ArrayVariable * | mask, | ||
| const std::vector< InputOutput::ArrayVariable * > | fields, | ||
| const std::vector< void * > | field_hosts, | ||
| const uicl | proc, | ||
| InputOutput::Variable * | n_offset ) |
Constructor
| name | The same name that the owner tool (See Aqua::CalcServer::MPISync) |
| vars_prefix | The unique prefix to register new variables (See Aqua::CalcServer::Tool::varPrefix()) |
| 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 | ( | EventProfile * | profiler | ) |
Receive the information.
| profiler | The profiler |