VecGetKokkosView#
Returns a constant Kokkos View that contains up-to-date data of a vector in the specified memory space.
Synopsis#
template <class MemorySpace>
PetscErrorCode VecGetKokkosView(Vec, Kokkos::View<const PetscScalar *, MemorySpace> *)
Synopsis#
#include <petscvec_kokkos.hpp>
PetscErrorCode VecGetKokkosView (Vec v,Kokkos::View<const PetscScalar*,MemorySpace>* kv);
PetscErrorCode VecGetKokkosView (Vec v,Kokkos::View<PetscScalar*,MemorySpace>* kv);
Logically Collective
Input Parameter#
v - the vector in type of
VECKOKKOS
Output Parameter#
kv - the Kokkos View with a user-specified template parameter MemorySpace
Notes#
If the vector is not of type VECKOKKOS
, an error will be raised.
The functions are similar to VecGetArrayRead()
and VecGetArray()
respectively. One can read-only or read/write the returned Kokkos View.
Passing in a const View enables read-only access.
One must return the View by a matching VecRestoreKokkosView()
after finishing using the View. Currently, only two memory
spaces are supported: Kokkos::HostSpace and Kokkos::DefaultExecutionSpace::memory_space.
If needed, a memory copy will be internally called to copy the latest vector data to the specified memory space.
See Also#
VecRestoreKokkosView()
, VecRestoreArray()
, VecGetKokkosViewWrite()
, VecGetArrayRead()
, VecGetArrays()
, VecGetArrayF90()
, VecGetArrayReadF90()
, VecPlaceArray()
, VecGetArray2d()
,
VecGetArrayPair()
, VecRestoreArrayPair()
, VecGetArrayWrite()
, VecRestoreArrayWrite()
Level#
beginner
Location#
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages