57 typedef typename DeviceType::execution_space execution_space;
58 typedef Kokkos::DualView<ValueType*, DeviceType> dual_view_type;
59 typedef Kokkos::pair<size_t, size_t> range_type;
65 const size_t curSize =
static_cast<size_t> (
dv.extent (0));
71 execution_space().fence ();
73 dv = dual_view_type ();
81 execution_space().fence ();
94 execution_space().fence ();
96 dv = dual_view_type ();
102 auto d_view = Kokkos::subview (
dv.view_device(), range_type (0,
newSize));
103 auto h_view = Kokkos::subview (
dv.view_host(), range_type (0,
newSize));
bool reallocDualViewIfNeeded(Kokkos::DualView< ValueType *, DeviceType > &dv, const size_t newSize, const char newLabel[], const size_t tooBigFactor=2, const bool needFenceBeforeRealloc=true)
Reallocate the DualView in/out argument, if needed.