AQUAgpusph 5.0.4
Loading...
Searching...
No Matches
Aqua::CalcServer::MPISync::Receiver Class Reference

Synchronize arrays between processes. More...

#include <MPISync.hpp>

Inheritance diagram for Aqua::CalcServer::MPISync::Receiver:
Collaboration diagram for Aqua::CalcServer::MPISync::Receiver:

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.

Detailed Description

Synchronize arrays between processes.

Constructor & Destructor Documentation

◆ Receiver()

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

Parameters
nameThe same name that the owner tool (See Aqua::CalcServer::MPISync)
vars_prefixThe unique prefix to register new variables (See Aqua::CalcServer::Tool::varPrefix())
maskIncoming data process mask
fieldsFields to store the incoming data
field_hostsAllocated host memory to temporary copy the incoming data, which will be uploaded to the computational device afterwards
procProcess from which the data shall be received
n_offsetVariable where the number of already received particles should be stored.
Here is the call graph for this function:

◆ ~Receiver()

Aqua::CalcServer::MPISync::Receiver::~Receiver ( )

Destructor.

Member Function Documentation

◆ execute()

void Aqua::CalcServer::MPISync::Receiver::execute ( EventProfile * profiler)

Receive the information.

Parameters
profilerThe profiler

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