DFT-FE 1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
dftfe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace > Class Template Reference

#include <MPICommunicatorP2PKernels.h>

Public Types

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

Static Public Member Functions

template<typename ValueTypeComm>
static void gatherLocallyOwnedEntriesSendBufferToTargetProcs (const MemoryStorage< ValueType, memorySpace > &dataArray, const SizeTypeVector &ownedLocalIndicesForTargetProcs, const size_type blockSize, MemoryStorage< ValueTypeComm, memorySpace > &sendBuffer)
 Function template for architecture adaptable gather kernel to send buffer.
 
template<typename ValueTypeComm>
static void accumAddLocallyOwnedContrRecvBufferFromTargetProcs (const MemoryStorage< ValueTypeComm, memorySpace > &recvBuffer, const SizeTypeVector &ownedLocalIndicesForTargetProcs, const size_type blockSize, const size_type locallyOwnedSize, const size_type ghostSize, MemoryStorage< ValueType, memorySpace > &dataArray)
 Function template for architecture adaptable accumulate add kernel from recv buffer.
 
template<typename ValueTypeComm>
static void accumInsertLocallyOwnedContrRecvBufferFromTargetProcs (const MemoryStorage< ValueTypeComm, memorySpace > &recvBuffer, const SizeTypeVector &ownedLocalIndicesForTargetProcs, const size_type blockSize, const size_type locallyOwnedSize, const size_type ghostSize, MemoryStorage< ValueType, memorySpace > &dataArray)
 Function template for architecture adaptable accumulate insert kernel from recv buffer.
 
template<typename ValueType1, typename ValueType2>
static void copyValueType1ArrToValueType2Arr (const size_type blockSize, const ValueType1 *type1Array, ValueType2 *type2Array)
 Function template for copying type1 to type2.
 

Member Typedef Documentation

◆ SizeTypeVector

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

Member Function Documentation

◆ accumAddLocallyOwnedContrRecvBufferFromTargetProcs()

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

Function template for architecture adaptable accumulate add kernel from recv buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]recvBuffer
[in]ownedLocalIndicesForTargetProcs
[in]blockSize
[out]dataArray

◆ accumInsertLocallyOwnedContrRecvBufferFromTargetProcs()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
template<typename ValueTypeComm>
static void dftfe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::accumInsertLocallyOwnedContrRecvBufferFromTargetProcs ( const MemoryStorage< ValueTypeComm, memorySpace > & recvBuffer,
const SizeTypeVector & ownedLocalIndicesForTargetProcs,
const size_type blockSize,
const size_type locallyOwnedSize,
const size_type ghostSize,
MemoryStorage< ValueType, memorySpace > & dataArray )
static

Function template for architecture adaptable accumulate insert kernel from recv buffer.

Template Parameters
ValueTypethe type of the number
memorySpace
Parameters
[in]recvBuffer
[in]ownedLocalIndicesForTargetProcs
[in]blockSize
[out]dataArray

◆ copyValueType1ArrToValueType2Arr()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
template<typename ValueType1, typename ValueType2>
static void dftfe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::copyValueType1ArrToValueType2Arr ( const size_type blockSize,
const ValueType1 * type1Array,
ValueType2 * type2Array )
static

Function template for copying type1 to type2.

Parameters
[in]blockSize
[in]type1Array
[out]type2Array

◆ gatherLocallyOwnedEntriesSendBufferToTargetProcs()

template<typename ValueType, dftfe::utils::MemorySpace memorySpace>
template<typename ValueTypeComm>
static void dftfe::utils::MPICommunicatorP2PKernels< ValueType, memorySpace >::gatherLocallyOwnedEntriesSendBufferToTargetProcs ( const MemoryStorage< ValueType, memorySpace > & dataArray,
const SizeTypeVector & ownedLocalIndicesForTargetProcs,
const size_type blockSize,
MemoryStorage< ValueTypeComm, 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

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