DFT-EFE
 
Loading...
Searching...
No Matches
dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace > Class Template Reference

#include <MPICommunicatorP2P.h>

Public Member Functions

 MPICommunicatorP2P (std::shared_ptr< const MPIPatternP2P< memorySpace > > mpiPatternP2P, const size_type blockSize)
 
void updateGhostValues (MemoryStorage< ValueType, memorySpace > &dataArray, const size_type communicationChannel=0)
 
void accumulateAddLocallyOwned (MemoryStorage< ValueType, memorySpace > &dataArray, const size_type communicationChannel=0)
 
void updateGhostValuesBegin (MemoryStorage< ValueType, memorySpace > &dataArray, const size_type communicationChannel=0)
 
void updateGhostValuesEnd (MemoryStorage< ValueType, memorySpace > &dataArray)
 
void accumulateAddLocallyOwnedBegin (MemoryStorage< ValueType, memorySpace > &dataArray, const size_type communicationChannel=0)
 
void accumulateAddLocallyOwnedEnd (MemoryStorage< ValueType, memorySpace > &dataArray)
 
std::shared_ptr< const MPIPatternP2P< memorySpace > > getMPIPatternP2P () const
 
int getBlockSize () const
 

Private Attributes

std::shared_ptr< const MPIPatternP2P< memorySpace > > d_mpiPatternP2P
 
size_type d_blockSize
 
MemoryStorage< ValueType, memorySpace > d_targetDataBuffer
 
MemoryStorage< ValueType, memorySpace > d_ghostDataBuffer
 
std::vector< MPIRequestd_requestsUpdateGhostValues
 
std::vector< MPIRequestd_requestsAccumulateAddLocallyOwned
 
MPIComm d_mpiCommunicator
 

Constructor & Destructor Documentation

◆ MPICommunicatorP2P()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::MPICommunicatorP2P ( std::shared_ptr< const MPIPatternP2P< memorySpace > >  mpiPatternP2P,
const size_type  blockSize 
)

Member Function Documentation

◆ accumulateAddLocallyOwned()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::accumulateAddLocallyOwned ( MemoryStorage< ValueType, memorySpace > &  dataArray,
const size_type  communicationChannel = 0 
)

◆ accumulateAddLocallyOwnedBegin()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::accumulateAddLocallyOwnedBegin ( MemoryStorage< ValueType, memorySpace > &  dataArray,
const size_type  communicationChannel = 0 
)
Here is the call graph for this function:

◆ accumulateAddLocallyOwnedEnd()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::accumulateAddLocallyOwnedEnd ( MemoryStorage< ValueType, memorySpace > &  dataArray)
Here is the call graph for this function:

◆ getBlockSize()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
int dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::getBlockSize

◆ getMPIPatternP2P()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
std::shared_ptr< const MPIPatternP2P< memorySpace > > dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::getMPIPatternP2P

◆ updateGhostValues()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::updateGhostValues ( MemoryStorage< ValueType, memorySpace > &  dataArray,
const size_type  communicationChannel = 0 
)

◆ updateGhostValuesBegin()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::updateGhostValuesBegin ( MemoryStorage< ValueType, memorySpace > &  dataArray,
const size_type  communicationChannel = 0 
)
Here is the call graph for this function:

◆ updateGhostValuesEnd()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::updateGhostValuesEnd ( MemoryStorage< ValueType, memorySpace > &  dataArray)
Here is the call graph for this function:

Member Data Documentation

◆ d_blockSize

template<typename ValueType , MemorySpace memorySpace>
size_type dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_blockSize
private

◆ d_ghostDataBuffer

template<typename ValueType , MemorySpace memorySpace>
MemoryStorage<ValueType, memorySpace> dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_ghostDataBuffer
private

◆ d_mpiCommunicator

template<typename ValueType , MemorySpace memorySpace>
MPIComm dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_mpiCommunicator
private

◆ d_mpiPatternP2P

template<typename ValueType , MemorySpace memorySpace>
std::shared_ptr<const MPIPatternP2P<memorySpace> > dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_mpiPatternP2P
private

◆ d_requestsAccumulateAddLocallyOwned

template<typename ValueType , MemorySpace memorySpace>
std::vector<MPIRequest> dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_requestsAccumulateAddLocallyOwned
private

◆ d_requestsUpdateGhostValues

template<typename ValueType , MemorySpace memorySpace>
std::vector<MPIRequest> dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_requestsUpdateGhostValues
private

◆ d_targetDataBuffer

template<typename ValueType , MemorySpace memorySpace>
MemoryStorage<ValueType, memorySpace> dftefe::utils::mpi::MPICommunicatorP2P< ValueType, memorySpace >::d_targetDataBuffer
private

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