cuda::experimental::stf::frozen_logical_data#
-
template<typename T>
class frozen_logical_data# Frozen logical data are logical data which can be accessed outside tasks.
They are created using ctx.freeze, which returns a frozen_logical_data object. The get() and unfreeze() method allow to get an instance of the frozen data that is valid until unfreeze is called.
Public Functions
- inline frozen_logical_data(
- backend_ctx_untyped bctx,
- logical_data<T> ld,
- access_mode m,
- data_place place,
- bool user_freeze,
-
frozen_logical_data() = default#
-
frozen_logical_data(const frozen_logical_data &other) = default#
-
frozen_logical_data(frozen_logical_data &&other) noexcept = default#
- frozen_logical_data &operator=(
- const frozen_logical_data &other,
- frozen_logical_data &operator=(
- frozen_logical_data &&other,
-
inline ::std::pair<T, event_list> get(data_place place)#
-
inline T get(data_place place, cudaStream_t stream)#
-
inline void unfreeze(event_list prereqs)#
-
inline void unfreeze(cudaStream_t stream)#
-
inline frozen_logical_data &set_automatic_unfreeze(bool flag = true)#
-
inline access_mode get_access_mode() const#
-
inline int freeze_fake_task_id() const#
-
inline int unfreeze_fake_task_id() const#