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

#include <MPICommunicatorP2PKernels.h>

Public Types

using SizeTypeVector = utils::MemoryStorage< size_type, memorySpace >
 

Static Public Member Functions

static void gatherLocallyOwnedEntriesSendBufferToTargetProcs (const MemoryStorage< ValueType, memorySpace > &dataArray, const SizeTypeVector &ownedLocalIndicesForTargetProcs, const size_type blockSize, MemoryStorage< ValueType, memorySpace > &sendBuffer)
 Function template for architecture adaptable gather kernel to send buffer. More...
 
static void gatherLocallyGhostEntriesSendBufferToGhostProcs (const ValueType *dataArray, const SizeTypeVector &ghostLocalIndicesForGhostProcs, const size_type blockSize, MemoryStorage< ValueType, memorySpace > &sendBuffer)
 Function template for architecture adaptable gather kernel to send buffer. More...
 
static void accumAddLocallyOwnedContrRecvBufferFromTargetProcs (const MemoryStorage< ValueType, memorySpace > &recvBuffer, const SizeTypeVector &ownedLocalIndicesForTargetProcs, const size_type blockSize, MemoryStorage< ValueType, memorySpace > &dataArray)
 Function template for architecture adaptable accumlate kernel from recv buffer. More...
 
static void insertLocalGhostValuesRecvBufferFromGhostProcs (const MemoryStorage< ValueType, memorySpace > &recvBuffer, const SizeTypeVector &ghostLocalIndices, const size_type blockSize, ValueType *dataArray)
 Function template for architecture adaptable insert kernel from recv buffer. More...
 

Member Typedef Documentation

◆ SizeTypeVector

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
using dftefe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::SizeTypeVector = utils::MemoryStorage<size_type, memorySpace>

Member Function Documentation

◆ accumAddLocallyOwnedContrRecvBufferFromTargetProcs()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::accumAddLocallyOwnedContrRecvBufferFromTargetProcs ( const MemoryStorage< ValueType, memorySpace > &  recvBuffer,
const SizeTypeVector ownedLocalIndicesForTargetProcs,
const size_type  blockSize,
MemoryStorage< ValueType, memorySpace > &  dataArray 
)
static

Function template for architecture adaptable accumlate kernel from recv buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]recvBuffer
[in]ownedLocalIndicesForTargetProcs
[in]blockSize
[out]dataArray
Here is the call graph for this function:

◆ gatherLocallyGhostEntriesSendBufferToGhostProcs()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::gatherLocallyGhostEntriesSendBufferToGhostProcs ( const ValueType *  dataArray,
const SizeTypeVector ghostLocalIndicesForGhostProcs,
const size_type  blockSize,
MemoryStorage< ValueType, memorySpace > &  sendBuffer 
)
static

Function template for architecture adaptable gather kernel to send buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]dataArraydata array to locally ghost entries
[in]ghostLocalIndicesForGhostProcs
[in]blockSize
[out]sendBuffer
Here is the call graph for this function:

◆ gatherLocallyOwnedEntriesSendBufferToTargetProcs()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::gatherLocallyOwnedEntriesSendBufferToTargetProcs ( const MemoryStorage< ValueType, memorySpace > &  dataArray,
const SizeTypeVector ownedLocalIndicesForTargetProcs,
const size_type  blockSize,
MemoryStorage< ValueType, memorySpace > &  sendBuffer 
)
static

Function template for architecture adaptable gather kernel to send buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]dataArraydata array with locally owned entries
[in]ownedLocalIndicesForTargetProcs
[in]blockSize
[out]sendBuffer
Here is the call graph for this function:

◆ insertLocalGhostValuesRecvBufferFromGhostProcs()

template<typename ValueType , dftefe::utils::MemorySpace memorySpace>
void dftefe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::insertLocalGhostValuesRecvBufferFromGhostProcs ( const MemoryStorage< ValueType, memorySpace > &  recvBuffer,
const SizeTypeVector ghostLocalIndices,
const size_type  blockSize,
ValueType *  dataArray 
)
static

Function template for architecture adaptable insert kernel from recv buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]recvBuffer
[in]ownedLocalIndicesForTargetProcs
[in]blockSize
[out]dataArray
Here is the call graph for this function:

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