Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT > Class Template Reference
Collaboration diagram for Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >:

Public Types

typedef MatrixT MatrixType
typedef MatrixType::ValueType ValueType
typedef sycl::buffer< ValueType, 1 > ValueBufferType
typedef sycl::buffer< int > IndexBufferType
typedef std::unique_ptr< IndexBufferType > IndexBufferPtrType

Public Member Functions

 SYCLLUSendRecvOp (MatrixType &matrix, MatrixDistribution &distribution, std::vector< int > &work, Arccore::ITraceMng *trace_mng=nullptr)
void initSendRecvConnectivity ()
void sendUpperNeighbLUData (ValueType *values)
void recvLowerNeighbLUData (ValueType *values)

Private Attributes

MatrixType & m_matrix
MatrixDistributionm_distribution
std::vector< int > & m_work
const Alien::SimpleCSRInternal::CommInfom_send_info
const Alien::SimpleCSRInternal::CommInfom_recv_info
std::vector< std::vector< ValueType > > m_send_lu_buffer
std::vector< std::vector< ValueType > > m_recv_lu_buffer
std::vector< std::vector< int > > m_send_lu_ibuffer
std::vector< std::vector< int > > m_recv_lu_ibuffer
UniqueArray< int > m_recv_connectivity_ids
UniqueArray< int > m_recv_connectivity_krow
UniqueArray< int > m_recv_connectivity_ids_ptr
UniqueArray< std::map< int, int > > m_mpi_ext_inv_ids
Arccore::MessagePassing::IMessagePassingMng * m_parallel_mng = nullptr
Arccore::ITraceMng * m_trace = nullptr

Detailed Description

template<typename MatrixT>
class Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >

Definition at line 44 of file SYCLLUSendRecvOp.h.

Member Typedef Documentation

◆ IndexBufferPtrType

template<typename MatrixT>
typedef std::unique_ptr<IndexBufferType> Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::IndexBufferPtrType

Definition at line 54 of file SYCLLUSendRecvOp.h.

◆ IndexBufferType

template<typename MatrixT>
typedef sycl::buffer<int> Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::IndexBufferType

Definition at line 53 of file SYCLLUSendRecvOp.h.

◆ MatrixType

template<typename MatrixT>
typedef MatrixT Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::MatrixType

Definition at line 48 of file SYCLLUSendRecvOp.h.

◆ ValueBufferType

template<typename MatrixT>
typedef sycl::buffer<ValueType, 1> Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::ValueBufferType

Definition at line 51 of file SYCLLUSendRecvOp.h.

◆ ValueType

template<typename MatrixT>
typedef MatrixType::ValueType Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::ValueType

Definition at line 49 of file SYCLLUSendRecvOp.h.

Constructor & Destructor Documentation

◆ SYCLLUSendRecvOp()

template<typename MatrixT>
Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::SYCLLUSendRecvOp ( MatrixType & matrix,
MatrixDistribution & distribution,
std::vector< int > & work,
Arccore::ITraceMng * trace_mng = nullptr )
inline

Definition at line 58 of file SYCLLUSendRecvOp.h.

◆ ~SYCLLUSendRecvOp()

template<typename MatrixT>
virtual Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::~SYCLLUSendRecvOp ( )
inlinevirtual

Definition at line 73 of file SYCLLUSendRecvOp.h.

Member Function Documentation

◆ initSendRecvConnectivity()

template<typename MatrixT>
void Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::initSendRecvConnectivity ( )
inline

Definition at line 89 of file SYCLLUSendRecvOp.h.

◆ recvLowerNeighbLUData()

template<typename MatrixT>
void Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::recvLowerNeighbLUData ( ValueType * values)
inline

Definition at line 218 of file SYCLLUSendRecvOp.h.

◆ sendUpperNeighbLUData()

template<typename MatrixT>
void Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::sendUpperNeighbLUData ( ValueType * values)
inline

Definition at line 137 of file SYCLLUSendRecvOp.h.

Member Data Documentation

◆ m_distribution

template<typename MatrixT>
MatrixDistribution& Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_distribution
private

Definition at line 323 of file SYCLLUSendRecvOp.h.

◆ m_matrix

template<typename MatrixT>
MatrixType& Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_matrix
private

Definition at line 322 of file SYCLLUSendRecvOp.h.

◆ m_mpi_ext_inv_ids

template<typename MatrixT>
UniqueArray< std::map<int, int> > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_mpi_ext_inv_ids
private

Definition at line 342 of file SYCLLUSendRecvOp.h.

◆ m_parallel_mng

template<typename MatrixT>
Arccore::MessagePassing::IMessagePassingMng* Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_parallel_mng = nullptr
private

Definition at line 344 of file SYCLLUSendRecvOp.h.

◆ m_recv_connectivity_ids

template<typename MatrixT>
UniqueArray< int > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_connectivity_ids
private

Definition at line 339 of file SYCLLUSendRecvOp.h.

◆ m_recv_connectivity_ids_ptr

template<typename MatrixT>
UniqueArray< int > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_connectivity_ids_ptr
private

Definition at line 341 of file SYCLLUSendRecvOp.h.

◆ m_recv_connectivity_krow

template<typename MatrixT>
UniqueArray< int > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_connectivity_krow
private

Definition at line 340 of file SYCLLUSendRecvOp.h.

◆ m_recv_info

template<typename MatrixT>
const Alien::SimpleCSRInternal::CommInfo& Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_info
private

Definition at line 326 of file SYCLLUSendRecvOp.h.

◆ m_recv_lu_buffer

template<typename MatrixT>
std::vector<std::vector<ValueType> > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_lu_buffer
private

Definition at line 334 of file SYCLLUSendRecvOp.h.

◆ m_recv_lu_ibuffer

template<typename MatrixT>
std::vector<std::vector<int> > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_recv_lu_ibuffer
private

Definition at line 336 of file SYCLLUSendRecvOp.h.

◆ m_send_info

template<typename MatrixT>
const Alien::SimpleCSRInternal::CommInfo& Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_send_info
private

Definition at line 325 of file SYCLLUSendRecvOp.h.

◆ m_send_lu_buffer

template<typename MatrixT>
std::vector<std::vector<ValueType> > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_send_lu_buffer
private

Definition at line 333 of file SYCLLUSendRecvOp.h.

◆ m_send_lu_ibuffer

template<typename MatrixT>
std::vector<std::vector<int> > Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_send_lu_ibuffer
private

Definition at line 335 of file SYCLLUSendRecvOp.h.

◆ m_trace

template<typename MatrixT>
Arccore::ITraceMng* Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_trace = nullptr
private

Definition at line 345 of file SYCLLUSendRecvOp.h.

◆ m_work

template<typename MatrixT>
std::vector< int >& Alien::SYCLInternal::SYCLLUSendRecvOp< MatrixT >::m_work
private

Definition at line 324 of file SYCLLUSendRecvOp.h.


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