AQUAgpusph 4.1.2
Loading...
Searching...
No Matches
Public Member Functions
Aqua::CalcServer::MPISync::Sender Class Reference

Synchronize arrays between processes. More...

#include <CalcServer/MPISync.h>

Inheritance diagram for Aqua::CalcServer::MPISync::Sender:
Inheritance graph
[legend]
Collaboration diagram for Aqua::CalcServer::MPISync::Sender:
Collaboration graph
[legend]

Public Member Functions

 Sender (const std::string name, InputOutput::ArrayVariable *mask, const std::vector< InputOutput::ArrayVariable * > fields, const std::vector< void * > field_hosts, const unsigned int proc)
 
 ~Sender ()
 
void execute (void)
 Send 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.
 

Detailed Description

Synchronize arrays between processes.

Constructor & Destructor Documentation

◆ Sender()

Aqua::CalcServer::MPISync::Sender::Sender ( const std::string  name,
InputOutput::ArrayVariable mask,
const std::vector< InputOutput::ArrayVariable * >  fields,
const std::vector< void * >  field_hosts,
const unsigned int  proc 
)

Constructor

Parameters
nameThe same name that the owner tool (See Aqua::CalcServer::MPISync)
maskAlready sorted mask
fieldsAlready sorted fields
field_hostsAllocated host memory to temporary copy the data, while it is sent to another process or it is uploaded to the computational device either
procProcess to which the data shall be sent
n_offsetVariable where the number of already sent particles should be stored. Sending instances will use this variable to both, know when they can proceed, and which is the offset to read from fields

◆ ~Sender()

Aqua::CalcServer::MPISync::Sender::~Sender ( )

Destructor.

Member Function Documentation

◆ execute()

void Aqua::CalcServer::MPISync::Sender::execute ( void  )

Send the information.


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