Public Types | |
| typedef ValueT | ValueType |
| typedef Integer | IndexType |
| typedef SYCLInternal::VectorInternal< ValueType > | VectorInternal |
| Public Types inherited from Alien::IVectorImpl | |
| typedef Arccore::Real | ValueType |
| Type of the values stored in the vectors. | |
Public Member Functions | |
| SYCLVector () | |
| Constructeur sans association un MultiImpl. | |
| SYCLVector (const MultiVectorImpl *multi_impl) | |
| Constructeur avec association ? un MultiImpl. | |
| VectorInternal * | internal () |
| VectorInternal const * | internal () const |
| Integer | blockSize () const |
| void | setBlockSize (Integer block_size) |
| Integer | getAllocSize () const |
| void | allocate () |
| void | resize (Integer alloc_size) const |
| void | clear () |
| Wipe out internal data. | |
| void | init (const VectorDistribution &dist, const bool need_allocate) |
| Initialize vector datas. | |
| void | init (const VectorDistribution &dist, Integer block_size, const bool need_allocate) |
| const VectorDistribution & | distribution () const |
| Get the distribution of the vector. | |
| Arccore::Integer | scalarizedLocalSize () const |
| Get the "scalarized" local size. | |
| Arccore::Integer | scalarizedGlobalSize () const |
| Get the "scalarized" global size. | |
| Arccore::Integer | scalarizedOffset () const |
| Get the "scalarized" offset. | |
| ValueType * | getDataPtr () |
| ValueType * | data () |
| ValueType const * | getDataPtr () const |
| ValueType const * | data () const |
| ValueType const * | getAddressData () const |
| void | initDevicePointers (int **rows, ValueType **values) const |
| template<typename LambdaT> | |
| void | apply (LambdaT const &lambda) |
| void | setValues (std::size_t size, ValueType const *ptr) |
| void | setValuesFromHost (std::size_t size, ValueType const *ptr) |
| void | setValuesFromDevice (std::size_t size, ValueType const *ptr) |
| void | setValuesFromHost () |
| void | copyValuesTo (std::size_t size, ValueType *ptr) const |
| void | copyValuesToDevice (std::size_t size, ValueType *ptr) const |
| void | copyValuesToDevice (ValueType *ptr) const |
| void | pointWiseMult (SYCLVector const &y, SYCLVector &z) const |
| template<typename E> | |
| SYCLVector & | operator= (E const &expr) |
| Public Member Functions inherited from Alien::IVectorImpl | |
| IVectorImpl (const MultiVectorImpl *multi_impl, BackEndId backend="") | |
| Constructor. | |
| virtual | ~IVectorImpl () override |
| Free resources. | |
| IVectorImpl (const IVectorImpl &src)=delete | |
| IVectorImpl (IVectorImpl &&src)=delete | |
| IVectorImpl & | operator= (const IVectorImpl &src)=delete |
| IVectorImpl & | operator= (IVectorImpl &&src)=delete |
| virtual const ISpace & | space () const |
| Get the vector space. | |
| virtual BackEndId | backend () const |
| virtual const Block * | block () const |
| Get block datas of the vector. | |
| virtual const VBlock * | vblock () const |
| Get block datas of the vector. | |
| const MultiVectorImpl * | impls () const |
| Public Member Functions inherited from Alien::Timestamp | |
| Timestamp (const TimestampMng *manager) | |
| virtual | ~Timestamp () |
| Destructeur de la classe. | |
| virtual Int64 | timestamp () const |
| Donne la valeur courante du timestamp. | |
| void | updateTimestamp () |
| Met à jour le timestamp. | |
| void | copyTimestamp (const Timestamp &v) |
| Copy un autre timestamp. | |
| void | setTimestamp (const TimestampMng *manager, const Int64 timestamp) |
| Public Member Functions inherited from Alien::ObjectWithTrace | |
| template<typename T> | |
| void | alien_info (T &&t) const |
| template<typename T> | |
| void | alien_debug (T &&t) const |
| template<typename T> | |
| void | alien_warning (T &&t) const |
| template<typename T> | |
| void | alien_fatal (T &&t) const |
| ITraceMng * | traceMng () const |
Static Public Member Functions | |
| static void | allocateDevicePointers (std::size_t local_size, int **rows, ValueType **values) |
| static void | allocateDevicePointers (std::size_t local_size, ValueType **values) |
| static void | freeDevicePointers (int *rows, ValueType *values) |
| static void | freeDevicePointers (ValueType *values) |
| static void | initDevicePointers (std::size_t local_size, ValueType const *host_values, int **rows, ValueType **values) |
| static void | copyDeviceToHost (std::size_t local_size, ValueType const *device_values, ValueType *host_values) |
Private Attributes | |
| std::unique_ptr< VectorInternal > | m_internal |
| std::vector< ValueType > | m_h_values |
| std::size_t | m_local_size = 0 |
| Integer | m_own_block_size = 1 |
| VectorDistribution | m_own_distribution |
| std::unique_ptr< VBlockImpl > | m_vblock |
Additional Inherited Members | |
| Protected Member Functions inherited from Alien::ObjectWithTrace | |
| TraceMessage | cout () const |
| Protected Attributes inherited from Alien::IVectorImpl | |
| const MultiVectorImpl * | m_multi_impl |
| Pointer on vectors implementations. | |
| BackEndId | m_backend |
| Backend id. | |
| VBlockSizes * | m_vblock_sizes |
| Variable blocks size data. | |
Definition at line 32 of file SYCLVector.h.
| typedef Integer Alien::SYCLVector< ValueT >::IndexType |
Definition at line 36 of file SYCLVector.h.
| typedef ValueT Alien::SYCLVector< ValueT >::ValueType |
Definition at line 35 of file SYCLVector.h.
| typedef SYCLInternal::VectorInternal<ValueType> Alien::SYCLVector< ValueT >::VectorInternal |
Definition at line 38 of file SYCLVector.h.
| Alien::SYCLVector< ValueT >::SYCLVector | ( | ) |
Constructeur sans association un MultiImpl.
Definition at line 23 of file SYCLVector.cc.
References Alien::IVectorImpl::IVectorImpl().
| Alien::SYCLVector< ValueT >::SYCLVector | ( | const MultiVectorImpl * | multi_impl | ) |
Constructeur avec association ? un MultiImpl.
Definition at line 29 of file SYCLVector.cc.
References Alien::IVectorImpl::IVectorImpl().
|
virtual |
Definition at line 35 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::allocate | ( | ) |
Definition at line 39 of file SYCLVector.cc.
|
static |
Definition at line 163 of file SYCLVector.cc.
|
static |
Definition at line 195 of file SYCLVector.cc.
|
inline |
Definition at line 197 of file SYCLVector.h.
|
inline |
Definition at line 60 of file SYCLVector.h.
|
virtual |
Wipe out internal data.
Reimplemented from Alien::IVectorImpl.
Definition at line 56 of file SYCLVector.cc.
|
static |
Definition at line 258 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::copyValuesTo | ( | std::size_t | size, |
| ValueType * | ptr ) const |
Definition at line 96 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::copyValuesToDevice | ( | std::size_t | size, |
| ValueType * | ptr ) const |
Definition at line 104 of file SYCLVector.cc.
|
inline |
Definition at line 218 of file SYCLVector.h.
|
inline |
Definition at line 168 of file SYCLVector.h.
|
inline |
Definition at line 171 of file SYCLVector.h.
|
inlinevirtual |
Get the distribution of the vector.
Reimplemented from Alien::IVectorImpl.
Definition at line 135 of file SYCLVector.h.
|
static |
Definition at line 146 of file SYCLVector.cc.
|
static |
Definition at line 155 of file SYCLVector.cc.
|
inline |
Definition at line 172 of file SYCLVector.h.
|
inline |
Definition at line 82 of file SYCLVector.h.
|
inline |
Definition at line 167 of file SYCLVector.h.
|
inline |
Definition at line 170 of file SYCLVector.h.
|
inlinevirtual |
Initialize vector datas.
| [in] | dist | The vector distribution |
| [in] | do_alloc | Allocate memory or not |
Reimplemented from Alien::IVectorImpl.
Definition at line 93 of file SYCLVector.h.
|
inline |
Definition at line 112 of file SYCLVector.h.
| void Alien::SYCLVector< ValueT >::initDevicePointers | ( | int ** | rows, |
| ValueType ** | values ) const |
Definition at line 113 of file SYCLVector.cc.
|
static |
Definition at line 223 of file SYCLVector.cc.
|
inline |
Definition at line 50 of file SYCLVector.h.
|
inline |
Definition at line 55 of file SYCLVector.h.
| void Alien::SYCLVector< ValueT >::pointWiseMult | ( | SYCLVector< ValueT > const & | y, |
| SYCLVector< ValueT > & | z ) const |
Definition at line 287 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::resize | ( | Integer | alloc_size | ) | const |
Definition at line 48 of file SYCLVector.cc.
|
inlinevirtual |
Get the "scalarized" global size.
Reimplemented from Alien::IVectorImpl.
Definition at line 151 of file SYCLVector.h.
|
inlinevirtual |
Get the "scalarized" local size.
Reimplemented from Alien::IVectorImpl.
Definition at line 143 of file SYCLVector.h.
|
inlinevirtual |
Get the "scalarized" offset.
Reimplemented from Alien::IVectorImpl.
Definition at line 159 of file SYCLVector.h.
|
inline |
Definition at line 74 of file SYCLVector.h.
| void Alien::SYCLVector< ValueT >::setValues | ( | std::size_t | size, |
| ValueType const * | ptr ) |
Definition at line 72 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::setValuesFromDevice | ( | std::size_t | size, |
| ValueType const * | ptr ) |
Definition at line 81 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::setValuesFromHost | ( | ) |
Definition at line 65 of file SYCLVector.cc.
| void Alien::SYCLVector< ValueT >::setValuesFromHost | ( | std::size_t | size, |
| ValueType const * | ptr ) |
Definition at line 88 of file SYCLVector.cc.
|
mutableprivate |
Definition at line 233 of file SYCLVector.h.
|
mutableprivate |
Definition at line 232 of file SYCLVector.h.
|
private |
Definition at line 234 of file SYCLVector.h.
|
private |
Definition at line 235 of file SYCLVector.h.
|
private |
Definition at line 236 of file SYCLVector.h.
|
mutableprivate |
Definition at line 237 of file SYCLVector.h.