Classes | |
| struct | TileT |
| struct | Tile |
| struct | LU |
Public Types | |
| using | ThisType = MatrixInternal<ValueT,EllPackSize> |
| using | ValueType = ValueT |
| using | value_type = ValueT |
| using | ProfileType = BEllPackStructInfo<EllPackSize,int> |
| using | InternalProfileType = typename ProfileType::InternalType |
| using | IndexType = typename InternalProfileType::IndexType |
| using | IndexBufferType = typename InternalProfileType::IndexBufferType |
| using | IndexBufferPtrType = std::unique_ptr<IndexBufferType> |
| using | value_buffer_type = sycl::buffer<value_type, 1> |
| using | ValueBufferType = sycl::buffer<value_type, 1> |
| using | ValueBufferPtrType = std::unique_ptr<ValueBufferType> |
| using | QueueType = sycl::queue |
Public Member Functions | |
| MatrixInternal (ProfileType const *profile, int blk_size=1) | |
| bool | setMatrixValues (ValueType const *values, bool only_host) |
| bool | setMatrixValuesFromHost () |
| bool | setMatrixValues (ValueBufferType &values) |
| bool | setMatrixValues (ValueBufferType &values, ValueBufferType &ext_values) |
| bool | copy (std::size_t nb_blocks, Integer block_size, ValueBufferType &rhs_values, Integer rhs_block_size) |
| bool | copy (std::size_t nb_blocks, Integer block_size, ValueBufferType &rhs_values, ValueBufferType &rhs_ext_values, Integer rhs_block_size) |
| bool | needUpdate () |
| void | notifyChanges () |
| void | endUpdate () |
| template<int N> | |
| void | multN (ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | mult (ValueBufferType &x, ValueBufferType &y) const |
| void | mult (ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | addExtMult (ValueBufferType &x, ValueBufferType &y) const |
| void | addExtMult (ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| template<int N> | |
| void | addLMultN (ValueType alpha, ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| template<int N> | |
| void | addUMultN (ValueType alpha, ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | addLMult (ValueType alpha, ValueBufferType &x, ValueBufferType &y) const |
| void | addUMult (ValueType alpha, ValueBufferType &x, ValueBufferType &y) const |
| void | addLMult (ValueType alpha, ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | addUMult (ValueType alpha, ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | multDiag (ValueBufferType &x, ValueBufferType &y) const |
| void | multDiag (ValueBufferType &x, ValueBufferType &y, QueueType &queue) const |
| void | multDiag (ValueBufferType &y) const |
| void | multDiag (ValueBufferType &y, QueueType &queue) const |
| void | computeDiag (ValueBufferType &y) const |
| void | computeDiag (ValueBufferType &y, QueueType &queue) const |
| void | computeBlockDiag (ValueBufferType &y) const |
| void | computeBlockDiag (ValueBufferType &y, QueueType &queue) const |
| void | multInvDiag (ValueBufferType &y) const |
| void | multInvDiag (ValueBufferType &y, QueueType &queue) const |
| void | computeInvDiag (ValueBufferType &y) const |
| void | computeInvDiag (ValueBufferType &y, QueueType &queue) const |
| void | computeInvBlockDiag (ValueBufferType &y) const |
| void | computeInvBlockDiag (ValueBufferType &y, QueueType &queue) const |
| void | scal (ValueBufferType &y) |
| void | scal (ValueBufferType &y, QueueType &queue) |
| void | copyDevicePointers (int local_offset, std::size_t nrows, std::size_t nnz, int *rows, int *ncols, int *cols, ValueT *values) const |
| ValueBufferType & | getValues () |
| ValueBufferType const | getValues () const |
| ProfileType const * | getProfile () const |
| ValueType const * | getHCsrData () const |
| ValueType * | getHCsrData () |
| IndexBufferType & | getSendIds () const |
| IndexBufferType & | getRecvIds () const |
Public Attributes | |
| int | m_N = 1 |
| int | m_NxN = 1 |
| ProfileType const * | m_profile = nullptr |
| ProfileType const * | m_ext_profile = nullptr |
| std::vector< ValueType > | m_h_csr_values |
| std::vector< ValueType > | m_h_values |
| ValueBufferType | m_values |
| std::vector< ValueType > | m_h_csr_ext_values |
| std::vector< ValueType > | m_h_ext_values |
| ValueBufferPtrType | m_ext_values |
| bool | m_values_is_update = false |
| int const * | m_h_interface_row_ids = nullptr |
| IndexBufferPtrType | m_interface_row_ids |
| IndexBufferPtrType | m_send_ids |
| IndexBufferPtrType | m_recv_ids |
| IndexBufferPtrType | m_recv_uids |
Static Public Attributes | |
| static const int | ellpack_size = EllPackSize |
Definition at line 106 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::IndexBufferPtrType = std::unique_ptr<IndexBufferType> |
Definition at line 121 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::IndexBufferType = typename InternalProfileType::IndexBufferType |
Definition at line 120 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::IndexType = typename InternalProfileType::IndexType |
Definition at line 119 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::InternalProfileType = typename ProfileType::InternalType |
Definition at line 118 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::ProfileType = BEllPackStructInfo<EllPackSize,int> |
Definition at line 117 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::QueueType = sycl::queue |
Definition at line 127 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::ThisType = MatrixInternal<ValueT,EllPackSize> |
Definition at line 110 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::value_buffer_type = sycl::buffer<value_type, 1> |
Definition at line 123 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::value_type = ValueT |
Definition at line 115 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::ValueBufferPtrType = std::unique_ptr<ValueBufferType> |
Definition at line 125 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::ValueBufferType = sycl::buffer<value_type, 1> |
Definition at line 124 of file SYCLBEllPackInternal.h.
| using Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::ValueType = ValueT |
Definition at line 114 of file SYCLBEllPackInternal.h.
| Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::MatrixInternal | ( | ProfileType const * | profile, |
| int | blk_size = 1 ) |
Definition at line 433 of file SYCLBEllPackMatrix.cc.
|
inline |
Definition at line 311 of file SYCLBEllPackInternal.h.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addExtMult | ( | ValueBufferType & | x, |
| ValueBufferType & | y ) const |
Definition at line 1928 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addExtMult | ( | ValueBufferType & | x, |
| ValueBufferType & | y, | ||
| QueueType & | queue ) const |
Definition at line 1864 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addLMult | ( | ValueType | alpha, |
| ValueBufferType & | x, | ||
| ValueBufferType & | y ) const |
Definition at line 2142 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addLMult | ( | ValueType | alpha, |
| ValueBufferType & | x, | ||
| ValueBufferType & | y, | ||
| QueueType & | queue ) const |
Definition at line 1935 of file SYCLBEllPackMatrix.cc.
|
inline |
Definition at line 419 of file SYCLBEllPackInternal.h.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addUMult | ( | ValueType | alpha, |
| ValueBufferType & | x, | ||
| ValueBufferType & | y ) const |
Definition at line 2356 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::addUMult | ( | ValueType | alpha, |
| ValueBufferType & | x, | ||
| ValueBufferType & | y, | ||
| QueueType & | queue ) const |
Definition at line 2148 of file SYCLBEllPackMatrix.cc.
|
inline |
Definition at line 499 of file SYCLBEllPackInternal.h.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeBlockDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2588 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeBlockDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2510 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2582 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2386 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeInvBlockDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2983 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeInvBlockDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2767 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeInvDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2977 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::computeInvDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2608 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::copyDevicePointers | ( | int | local_offset, |
| std::size_t | nrows, | ||
| std::size_t | nnz, | ||
| int * | rows, | ||
| int * | ncols, | ||
| int * | cols, | ||
| ValueT * | values ) const |
Definition at line 3092 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::endUpdate | ( | ) |
Definition at line 1531 of file SYCLBEllPackMatrix.cc.
|
inline |
Definition at line 627 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 622 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 620 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 636 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 632 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 614 of file SYCLBEllPackInternal.h.
|
inline |
Definition at line 616 of file SYCLBEllPackInternal.h.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::mult | ( | ValueBufferType & | x, |
| ValueBufferType & | y ) const |
Definition at line 1858 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::mult | ( | ValueBufferType & | x, |
| ValueBufferType & | y, | ||
| QueueType & | queue ) const |
Definition at line 1616 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multDiag | ( | ValueBufferType & | x, |
| ValueBufferType & | y ) const |
Definition at line 2367 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multDiag | ( | ValueBufferType & | x, |
| ValueBufferType & | y, | ||
| QueueType & | queue ) const |
Definition at line 2362 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2380 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2373 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multInvDiag | ( | ValueBufferType & | y | ) | const |
Definition at line 2602 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::multInvDiag | ( | ValueBufferType & | y, |
| QueueType & | queue ) const |
Definition at line 2595 of file SYCLBEllPackMatrix.cc.
|
inline |
Definition at line 336 of file SYCLBEllPackInternal.h.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::needUpdate | ( | ) |
Definition at line 1519 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::notifyChanges | ( | ) |
Definition at line 1525 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::scal | ( | ValueBufferType & | y | ) |
Definition at line 3086 of file SYCLBEllPackMatrix.cc.
| void Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::scal | ( | ValueBufferType & | y, |
| QueueType & | queue ) |
Definition at line 2990 of file SYCLBEllPackMatrix.cc.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::setMatrixValues | ( | ValueBufferType & | values | ) |
Definition at line 859 of file SYCLBEllPackMatrix.cc.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::setMatrixValues | ( | ValueBufferType & | values, |
| ValueBufferType & | ext_values ) |
Definition at line 1067 of file SYCLBEllPackMatrix.cc.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::setMatrixValues | ( | ValueType const * | values, |
| bool | only_host ) |
Definition at line 1276 of file SYCLBEllPackMatrix.cc.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllpackSize >::setMatrixValuesFromHost | ( | ) |
Definition at line 445 of file SYCLBEllPackMatrix.cc.
|
static |
Definition at line 112 of file SYCLBEllPackInternal.h.
| ProfileType const* Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_ext_profile = nullptr |
Definition at line 645 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 653 of file SYCLBEllPackInternal.h.
| std::vector<ValueType> Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_h_csr_ext_values |
Definition at line 651 of file SYCLBEllPackInternal.h.
| std::vector<ValueType> Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_h_csr_values |
Definition at line 647 of file SYCLBEllPackInternal.h.
| std::vector<ValueType> Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_h_ext_values |
Definition at line 652 of file SYCLBEllPackInternal.h.
| int const* Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_h_interface_row_ids = nullptr |
Definition at line 656 of file SYCLBEllPackInternal.h.
| std::vector<ValueType> Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_h_values |
Definition at line 648 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 657 of file SYCLBEllPackInternal.h.
| int Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_N = 1 |
Definition at line 642 of file SYCLBEllPackInternal.h.
| int Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_NxN = 1 |
Definition at line 643 of file SYCLBEllPackInternal.h.
| ProfileType const* Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_profile = nullptr |
Definition at line 644 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 659 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 660 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 658 of file SYCLBEllPackInternal.h.
|
mutable |
Definition at line 649 of file SYCLBEllPackInternal.h.
| bool Alien::SYCLInternal::MatrixInternal< ValueT, EllPackSize >::m_values_is_update = false |
Definition at line 654 of file SYCLBEllPackInternal.h.