|
BioCMAMC-ST
|
Wraps a Kokkos 2D View as an Eigen matrix map. More...
#include <kokkos_eigen.hpp>
Public Types | |
| using | eigen_map_type = Eigen::Map<eigen_mat_type> |
| < map over raw data type | |
| using | view_layout = layout |
| using | float_type = data_type |
| underlying host view | |
| using | host_view_type = view_type::t_host |
| underlying device view | |
| using | device_view_type = view_type::t_dev |
| underlying const device view | |
| using | const_device_view_type = view_type::t_dev_const |
Public Member Functions | |
| KokkosEigen2D (std::string label, std::size_t n, std::size_t m) | |
| Allocates Object of shape (n x m) on host and device. | |
| KokkosEigen2D () | |
| KokkosEigen2D & | operator= (const KokkosEigen2D &)=delete |
| KokkosEigen2D & | operator= (KokkosEigen2D &&rhs) noexcept=delete |
| KokkosEigen2D (KokkosEigen2D &&)=delete | |
| KokkosEigen2D (const KokkosEigen2D &)=delete | |
| ~KokkosEigen2D ()=default | |
| eigen_map_type & | eigen () |
| const eigen_map_type & | cst_eigen () const |
| view_type & | view () |
| host_view_type | host_view () |
| const_device_view_type | device_view_cst () const |
| device_view_type | device_view () const |
| std::size_t | n_row () const |
| std::size_t | n_col () const |
| void | host_to_device_sync () |
| void | device_to_host_sync () |
| eigen_array_type | as_array () |
| eigen_array_type | as_array () const |
| void | set_host (std::size_t i_r, std::size_t i_c, data_type &&value) |
| data_type & | get_host (std::size_t i_r, std::size_t i_c) |
| std::span< const double > | get_span () const |
| std::span< double > | get_span () |
Private Types | |
| using | view_type = Kokkos::DualView<data_type**, layout, exec, args> |
| dynamic Eigen matrix type | |
| using | eigen_mat_type |
| dynamic Eigen array type | |
| using | eigen_array_type |
Private Member Functions | |
| template<typename m_type> | |
| auto | get_map () |
Private Attributes | |
| view_type | m_view |
| Kokkos DualView storage. | |
| eigen_map_type | m_eigen_map |
| Eigen map pointing to host data. | |
Static Private Attributes | |
| static constexpr auto | eigen_layout = get_eigen_layout<layout>() |
| < ColMajor or RowMajor | |
Wraps a Kokkos 2D View as an Eigen matrix map.
| data_type | Scalar element type |
| layout | Kokkos memory layout; defaults to LayoutLeft |
| exec | Kokkos execution space; defaults to void |
| args | Additional template arguments for the underlying View |
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::const_device_view_type = view_type::t_dev_const |
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::device_view_type = view_type::t_dev |
underlying const device view
|
private |
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::eigen_map_type = Eigen::Map<eigen_mat_type> |
< map over raw data type
|
private |
dynamic Eigen array type
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::float_type = data_type |
underlying host view
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::host_view_type = view_type::t_host |
underlying device view
| using KokkosEigen::KokkosEigen2D< data_type, layout, exec, args >::view_layout = layout |
|
private |
dynamic Eigen matrix type
|
inline |
Allocates Object of shape (n x m) on host and device.
| label | Identifier name for the Kokkos View. |
| n | Number of rows. |
| m | Number of columns. |
|
inline |
|
delete |
|
delete |
|
default |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inlinenodiscard |
|
inline |
|
inline |
|
inlinenodiscard |
|
inlinenodiscard |
|
delete |
|
deletenoexcept |
|
inline |
|
inline |
|
staticconstexprprivate |
< ColMajor or RowMajor
underlying dual view type
|
private |
Eigen map pointing to host data.
|
private |
Kokkos DualView storage.