The base class for Kokkos arrays. More...
#include <KokkosArray.h>
Classes | |
| class | iterator |
| Array iterator. More... | |
Public Types | |
| using | unsigned_index_type = index_type |
| using | signed_index_type = typename std::make_signed< index_type >::type |
Public Member Functions | |
| ArrayBase (const LayoutType layout) | |
| Constructor. More... | |
| template<typename... size_type> | |
| ArrayBase (const LayoutType layout, size_type... n) | |
| Constructor Initialize and allocate array with given dimensions This allocates both host and device data. More... | |
| ArrayBase (const ArrayBase< T, dimension, index_type > &array) | |
| Copy constructor. More... | |
| ~ArrayBase () | |
| Destructor. More... | |
| void | destroy () |
| Free all data and reset. More... | |
| void | shallowCopy (const ArrayBase< T, dimension, index_type > &array) |
| Shallow copy another Kokkos array. More... | |
| unsigned int | useCount () const |
| Get the reference count. More... | |
| KOKKOS_FUNCTION bool | isAlloc () const |
| Get whether the array was allocated either on host or device. More... | |
| KOKKOS_FUNCTION bool | isHostAlloc () const |
| Get whether the array was allocated on host. More... | |
| KOKKOS_FUNCTION bool | isDeviceAlloc () const |
| Get whether the array was allocated on device. More... | |
| KOKKOS_FUNCTION bool | isHostAlias () const |
| Get whether the host array was aliased. More... | |
| KOKKOS_FUNCTION bool | isDeviceAlias () const |
| Get whether the device array was aliased. More... | |
| KOKKOS_FUNCTION index_type | size () const |
| Get the total array size. More... | |
| KOKKOS_FUNCTION index_type | n (unsigned int dim) const |
| Get the size of a dimension. More... | |
| KOKKOS_FUNCTION T * | data () const |
| Get the data pointer. More... | |
| KOKKOS_FUNCTION T & | first () const |
| Get the first element. More... | |
| KOKKOS_FUNCTION T & | last () const |
| Get the last element. More... | |
| KOKKOS_FUNCTION T & | operator[] (index_type i) const |
| Get an array entry. More... | |
| T * | hostData () const |
| Get the host data pointer. More... | |
| T * | deviceData () const |
| Get the device data pointer. More... | |
| auto | hostView () const |
| Get the host unmanaged view. More... | |
| auto | deviceView () const |
| Get the device unmanaged view. More... | |
| template<typename... size_type> | |
| void | init (size_type... n) |
| Initialize array with given dimensions but do not allocate. More... | |
| template<bool initialize = true> | |
| void | create (const std::vector< index_type > &n) |
| Allocate array on host and device. More... | |
| template<bool initialize = true, typename... size_type> | |
| void | create (size_type... n) |
| Allocate array on host and device. More... | |
| template<bool initialize = true> | |
| void | createHost (const std::vector< index_type > &n) |
| Allocate array on host only. More... | |
| template<bool initialize = true, typename... size_type> | |
| void | createHost (size_type... n) |
| Allocate array on host only. More... | |
| void | createDevice (const std::vector< index_type > &n) |
| Allocate array on device only. More... | |
| template<typename... size_type> | |
| void | createDevice (size_type... n) |
| Allocate array on device only. More... | |
| void | aliasHost (T *ptr) |
| Point the host data to an external data instead of allocating it. More... | |
| void | aliasDevice (T *ptr) |
| Point the device data to an external data instead of allocating it. More... | |
| void | offset (const std::vector< signed_index_type > &d) |
| Apply starting index offsets to each dimension. More... | |
| template<typename... offset_type> | |
| void | offset (offset_type... d) |
| Apply starting index offsets to each dimension. More... | |
| void | copyToDevice () |
| Copy data from host to device. More... | |
| void | copyToHost () |
| Copy data from device to host. More... | |
| void | copyIn (const T *ptr, MemcpyType dir, index_type n, index_type offset=0) |
| Copy data from an external data to this array. More... | |
| void | copyOut (T *ptr, MemcpyType dir, index_type n, index_type offset=0) |
| Copy data to an external data from this array. More... | |
| void | copyToDeviceNested () |
| Copy all the nested Kokkos arrays including self from host to device. More... | |
| void | moveToDevice (bool should_free_host=true) |
| Copy data from host to device and deallocate host. More... | |
| void | moveToHost (bool should_free_device=true) |
| Copy data from device to host and deallocate device. More... | |
| void | deepCopy (const ArrayBase< T, dimension, index_type > &array) |
| Deep copy another Kokkos array If ArrayDeepCopy<T>::value is true, it will copy-construct each entry If ArrayDeepCopy<T>::value is false, it will do a memory copy. More... | |
| void | swap (ArrayBase< T, dimension, index_type > &array) |
| Swap with another Kokkos array. More... | |
| auto & | operator= (const T &scalar) |
| Assign a scalar value uniformly. More... | |
| KOKKOS_FUNCTION iterator | begin () const |
| Get the beginning iterator. More... | |
| KOKKOS_FUNCTION iterator | end () const |
| Get the end iterator. More... | |
Protected Member Functions | |
| template<bool host, bool device, bool initialize, typename... size_type> | |
| void | createInternal (size_type... n) |
| The internal method to initialize and allocate this array. More... | |
| template<bool host, bool device, bool initialize> | |
| void | createInternal (const std::vector< index_type > &n) |
| The internal method to initialize and allocate this array. More... | |
| template<bool initialize> | |
| void | createInternal (const std::vector< index_type > &n, bool host, bool device) |
| The internal method to initialize and allocate this array. More... | |
| template<typename TargetSpace , typename SourceSpace > | |
| void | copyInternal (T *target, const T *source, index_type n) |
| The internal method to perform a memory copy. More... | |
Protected Attributes | |
| index_type | _n [dimension] = {0} |
| Size of each dimension. More... | |
| index_type | _s [dimension] = {0} |
| Stride of each dimension. More... | |
| signed_index_type | _d [dimension] = {0} |
| Offset of each dimension. More... | |
| bool | _is_offset = false |
| Flag whether the array indices are offset. More... | |
| bool | _is_malloc = false |
| Flag whether host data was allocated using malloc. More... | |
Private Member Functions | |
| template<bool initialize> | |
| void | allocHost () |
| Allocate host data for an initialized array that has not allocated host data. More... | |
| void | allocDevice () |
| Allocate device data for an initialized array that has not allocated device data. More... | |
| void | freeHost () |
| Free host data. More... | |
| void | freeDevice () |
| Free device data. More... | |
Private Attributes | |
| std::shared_ptr< unsigned int > | _counter |
| Reference counter. More... | |
| bool | _is_init = false |
| Flag whether array was initialized. More... | |
| bool | _is_host_alloc = false |
| Flag whether host data was allocated. More... | |
| bool | _is_device_alloc = false |
| Flag whether device data was allocated. More... | |
| bool | _is_host_alias = false |
| Flag whether the host data points to an external data. More... | |
| bool | _is_device_alias = false |
| Flag whether the device data points to an external data. More... | |
| T * | _host_data = nullptr |
| Host data. More... | |
| T * | _device_data = nullptr |
| Device data. More... | |
| index_type | _size = 0 |
| Total size. More... | |
| const LayoutType | _layout |
| Memory layout type. More... | |
The base class for Kokkos arrays.
Definition at line 106 of file KokkosArray.h.
| using Moose::Kokkos::ArrayBase< T, dimension, index_type >::signed_index_type = typename std::make_signed<index_type>::type |
Definition at line 114 of file KokkosArray.h.
| using Moose::Kokkos::ArrayBase< T, dimension, index_type >::unsigned_index_type = index_type |
Definition at line 113 of file KokkosArray.h.
|
inline |
Constructor.
| layout | The memory layout type |
Definition at line 120 of file KokkosArray.h.
|
inline |
Constructor Initialize and allocate array with given dimensions This allocates both host and device data.
| layout | The memory layout type |
| n | The size of each dimension |
Definition at line 131 of file KokkosArray.h.
|
inline |
Copy constructor.
Definition at line 140 of file KokkosArray.h.
|
inline |
Destructor.
Definition at line 156 of file KokkosArray.h.
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::aliasDevice | ( | T * | ptr | ) |
Point the device data to an external data instead of allocating it.
| ptr | The pointer to the external device data |
Definition at line 760 of file KokkosArray.h.
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::aliasHost | ( | T * | ptr | ) |
Point the host data to an external data instead of allocating it.
| ptr | The pointer to the external host data |
Definition at line 745 of file KokkosArray.h.
|
private |
Allocate device data for an initialized array that has not allocated device data.
Definition at line 798 of file KokkosArray.h.
|
private |
Allocate host data for an initialized array that has not allocated host data.
| initialize | Whether to initialize host data (calls default constructor) |
Definition at line 776 of file KokkosArray.h.
|
inline |
Get the beginning iterator.
Definition at line 479 of file KokkosArray.h.
Referenced by Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::copySet().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::copyIn | ( | const T * | ptr, |
| MemcpyType | dir, | ||
| index_type | n, | ||
| index_type | offset = 0 |
||
| ) |
Copy data from an external data to this array.
| ptr | The pointer to the external data |
| dir | The copy direction |
| n | The number of entries to copy |
| offset | The starting offset of this array |
Definition at line 1028 of file KokkosArray.h.
Referenced by Moose::Kokkos::dataLoad().
|
protected |
The internal method to perform a memory copy.
| TargetSpace | The Kokkos memory space of target data |
| Sourcespace | The Kokkos memory space of source data |
| target | The pointer to the target data |
| source | The pointer to the source data |
| n | The number of entries to copy |
Definition at line 907 of file KokkosArray.h.
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::copyOut | ( | T * | ptr, |
| MemcpyType | dir, | ||
| index_type | n, | ||
| index_type | offset = 0 |
||
| ) |
Copy data to an external data from this array.
| ptr | The pointer to the external data |
| dir | The copy direction |
| n | The number of entries to copy |
| offset | The starting offset of this array |
Definition at line 1083 of file KokkosArray.h.
Referenced by Moose::Kokkos::dataStore().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::copyToDevice | ( | ) |
Copy data from host to device.
Definition at line 947 of file KokkosArray.h.
Referenced by Moose::Kokkos::VariableGradientTempl< is_ad >::VariableGradientTempl(), and Moose::Kokkos::VariableValueTempl< is_ad >::VariableValueTempl().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::copyToDeviceNested | ( | ) |
Copy all the nested Kokkos arrays including self from host to device.
Definition at line 1151 of file KokkosArray.h.
Referenced by Moose::Kokkos::copyToDeviceInner().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::copyToHost | ( | ) |
Copy data from device to host.
Definition at line 972 of file KokkosArray.h.
|
inline |
Allocate array on host and device.
| initialize | Whether to initialize host data (calls default constructor) |
| n | The vector containing the size of each dimension |
Definition at line 303 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::ArrayBase(), Moose::Kokkos::VariableGradientTempl< is_ad >::VariableGradientTempl(), and Moose::Kokkos::VariableValueTempl< is_ad >::VariableValueTempl().
|
inline |
Allocate array on host and device.
| initialize | Whether to initialize host data (calls default constructor) |
| n | The size of each dimension |
Definition at line 313 of file KokkosArray.h.
|
inline |
Allocate array on device only.
| n | The vector containing the size of each dimension |
Definition at line 341 of file KokkosArray.h.
|
inline |
Allocate array on device only.
| n | The size of each dimension |
Definition at line 347 of file KokkosArray.h.
|
inline |
Allocate array on host only.
| initialize | Whether to initialize host data (calls default constructor) |
| n | The vector containing the size of each dimension |
Definition at line 323 of file KokkosArray.h.
|
inline |
Allocate array on host only.
| initialize | Whether to initialize host data (calls default constructor) |
| n | The size of each dimension |
Definition at line 333 of file KokkosArray.h.
|
protected |
The internal method to initialize and allocate this array.
| host | Whether host data will be allocated |
| device | Whether device data will be allocated |
| initialize | Whether to initialize host data (calls default constructor) |
| n | The size of each dimension |
Definition at line 892 of file KokkosArray.h.
|
protected |
The internal method to initialize and allocate this array.
| host | Whether host data will be allocated |
| device | Whether device data will be allocated |
| initialize | Whether to initialize host data (calls default constructor) |
| n | The vector containing the size of each dimension |
Definition at line 812 of file KokkosArray.h.
|
protected |
The internal method to initialize and allocate this array.
| initialize | Whether to initialize host data (calls default constructor) |
| n | The vector containing the size of each dimension |
| host | The flag whether host data will be allocated |
| device | The flag whether device data will be allocated |
Definition at line 875 of file KokkosArray.h.
|
inline |
Get the data pointer.
Definition at line 217 of file KokkosArray.h.
Referenced by Moose::Kokkos::Matrix::find().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::deepCopy | ( | const ArrayBase< T, dimension, index_type > & | array | ) |
Deep copy another Kokkos array If ArrayDeepCopy<T>::value is true, it will copy-construct each entry If ArrayDeepCopy<T>::value is false, it will do a memory copy.
| array | The Kokkos array to be deep copied |
Definition at line 1161 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::ArrayBase().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::destroy | ( | ) |
Free all data and reset.
Definition at line 674 of file KokkosArray.h.
Referenced by Moose::Kokkos::System::clearActiveMatrixTags(), Moose::Kokkos::System::clearActiveResidualTags(), Moose::Kokkos::System::clearActiveSolutionTags(), Moose::Kokkos::System::clearActiveVariables(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::~ArrayBase().
|
inline |
Get the device data pointer.
Definition at line 269 of file KokkosArray.h.
Referenced by Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::copyVector().
|
inline |
Get the device unmanaged view.
Definition at line 283 of file KokkosArray.h.
|
inline |
Get the end iterator.
Definition at line 489 of file KokkosArray.h.
Referenced by Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::copySet().
|
inline |
Get the first element.
Definition at line 228 of file KokkosArray.h.
Referenced by Moose::Kokkos::RPNEvaluator::eval().
|
private |
Free device data.
Definition at line 656 of file KokkosArray.h.
|
private |
Free host data.
Definition at line 625 of file KokkosArray.h.
|
inline |
Get the host data pointer.
Definition at line 264 of file KokkosArray.h.
Referenced by Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::copyVector().
|
inline |
Get the host unmanaged view.
Definition at line 274 of file KokkosArray.h.
|
inline |
Initialize array with given dimensions but do not allocate.
| n | The size of each dimension |
Definition at line 293 of file KokkosArray.h.
|
inline |
Get whether the array was allocated either on host or device.
Definition at line 180 of file KokkosArray.h.
Referenced by Moose::Kokkos::dataStore(), Moose::Kokkos::VariableGradientTempl< is_ad >::VariableGradientTempl(), and Moose::Kokkos::VariableValueTempl< is_ad >::VariableValueTempl().
|
inline |
Get whether the device array was aliased.
Definition at line 200 of file KokkosArray.h.
|
inline |
Get whether the array was allocated on device.
Definition at line 190 of file KokkosArray.h.
Referenced by Moose::Kokkos::dataStore().
|
inline |
Get whether the host array was aliased.
Definition at line 195 of file KokkosArray.h.
|
inline |
Get whether the array was allocated on host.
Definition at line 185 of file KokkosArray.h.
Referenced by Moose::Kokkos::dataLoad().
|
inline |
Get the last element.
Definition at line 239 of file KokkosArray.h.
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::moveToDevice | ( | bool | should_free_host = true | ) |
Copy data from host to device and deallocate host.
| should_free_host | Whether the host memory should be freed. Host memory cannot be freed when there are shallow copies of this array that are still alive. If should_free_host is true, and we cannot free for above reason, it will error. |
Definition at line 997 of file KokkosArray.h.
Referenced by Moose::Kokkos::JaggedArray< T, inner, outer, index_type, layout >::moveToDevice().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::moveToHost | ( | bool | should_free_device = true | ) |
Copy data from device to host and deallocate device.
| should_free_device | Whether the device memory should be freed. Device memory cannot be freed when there are shallow copies of this array that are still alive. If should_free_device is true, and we cannot free for above reason, it will error. |
Definition at line 1014 of file KokkosArray.h.
Referenced by Moose::Kokkos::JaggedArray< T, inner, outer, index_type, layout >::moveToHost().
|
inline |
Get the size of a dimension.
| dim | The dimension index |
Definition at line 211 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::ArrayBase(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::create(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::createDevice(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::createHost(), Moose::Kokkos::dataLoad(), Moose::Kokkos::dataStore(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::init(), Moose::Kokkos::MaterialPropertyValueBase< T, 0 >::n(), and Moose::Kokkos::JaggedArray< T, inner, outer, index_type, layout >::n().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::offset | ( | const std::vector< signed_index_type > & | d | ) |
Apply starting index offsets to each dimension.
| d | The vector containing the offset of each dimension |
Definition at line 915 of file KokkosArray.h.
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::offset | ( | offset_type... | d | ) |
Apply starting index offsets to each dimension.
| d | The offset of each dimension |
Definition at line 933 of file KokkosArray.h.
| auto & Moose::Kokkos::ArrayBase< T, dimension, index_type >::operator= | ( | const T & | scalar | ) |
Assign a scalar value uniformly.
| scalar | The scalar value to be assigned |
Definition at line 1212 of file KokkosArray.h.
|
inline |
Get an array entry.
| i | The dimensionless index |
Definition at line 251 of file KokkosArray.h.
Referenced by Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::operator()().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::shallowCopy | ( | const ArrayBase< T, dimension, index_type > & | array | ) |
Shallow copy another Kokkos array.
| array | The Kokkos array to be shallow copied |
Definition at line 712 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::ArrayBase(), Moose::Kokkos::Array< ContiguousElementID >::operator=(), Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::operator=(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::swap().
|
inline |
Get the total array size.
Definition at line 205 of file KokkosArray.h.
Referenced by Moose::Kokkos::ResidualObject::accumulateTaggedElementalMatrix(), Moose::Kokkos::ResidualObject::accumulateTaggedElementalResidual(), Moose::Kokkos::ResidualObject::accumulateTaggedNodalMatrix(), Moose::Kokkos::ResidualObject::accumulateTaggedNodalResidual(), Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::copyVector(), Moose::Kokkos::dataLoad(), Moose::Kokkos::dataStore(), KokkosPiecewiseBase::functionSize(), Moose::Kokkos::Variable::mooseVar(), Moose::Kokkos::JaggedArray< T, inner, outer, index_type, layout >::n(), BlockRestrictable::numKokkosBlockElements(), BlockRestrictable::numKokkosBlockNodes(), BlockRestrictable::numKokkosBlockSides(), BoundaryRestrictable::numKokkosBoundaryNodes(), BoundaryRestrictable::numKokkosBoundarySides(), Moose::Kokkos::MaterialBase::numKokkosElements(), Moose::Kokkos::Vector::operator()(), Moose::Kokkos::Vector::operator[](), Moose::Kokkos::MapBase< unsigned int, unsigned int >::size(), and KokkosBoundNodalKernel::skipOnBoundary().
| void Moose::Kokkos::ArrayBase< T, dimension, index_type >::swap | ( | ArrayBase< T, dimension, index_type > & | array | ) |
Swap with another Kokkos array.
| array | The Kokkos array to be swapped |
Definition at line 1201 of file KokkosArray.h.
|
inline |
Get the reference count.
Definition at line 173 of file KokkosArray.h.
|
private |
Reference counter.
Definition at line 584 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::useCount().
|
protected |
Offset of each dimension.
Definition at line 509 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::operator()(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Device data.
Definition at line 612 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::begin(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::data(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deviceData(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deviceView(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::end(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::first(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::last(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::operator[](), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Host data.
Definition at line 608 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::begin(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::data(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::end(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::first(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::hostData(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::hostView(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::last(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::operator[](), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Flag whether the device data points to an external data.
Definition at line 604 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isDeviceAlias(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Flag whether device data was allocated.
Definition at line 596 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isAlloc(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isDeviceAlloc(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Flag whether the host data points to an external data.
Definition at line 600 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isHostAlias(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Flag whether host data was allocated.
Definition at line 592 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isAlloc(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::isHostAlloc(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Flag whether array was initialized.
Definition at line 588 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
protected |
Flag whether host data was allocated using malloc.
Definition at line 517 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
protected |
Flag whether the array indices are offset.
Definition at line 513 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::operator()(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Memory layout type.
Definition at line 620 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
protected |
Size of each dimension.
Definition at line 501 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::n(), Moose::Kokkos::Array< T, 1, index_type, LayoutType::LEFT >::operator()(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
protected |
Stride of each dimension.
Definition at line 505 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deepCopy(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy().
|
private |
Total size.
Definition at line 616 of file KokkosArray.h.
Referenced by Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::deviceView(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::end(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::hostView(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::last(), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::operator[](), Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::shallowCopy(), and Moose::Kokkos::ArrayBase< Moose::Kokkos::RPNEvaluator::Instruction, dimension, index_type >::size().
1.8.14