PETSc version 3.17.0
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 on Vec
Input Parameter
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.
Note that 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
src/vec/vec/../../../include/petscvec_kokkos.hpp
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages