cuda::experimental::stf::frozen_logical_data#
-
template<typename T>
class frozen_logical_data : public cuda::experimental::stf::frozen_logical_data_untyped# 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
-
frozen_logical_data() = default#
Default constructor.
-
inline frozen_logical_data(frozen_logical_data_untyped &&u)#
Constructor from an untyped frozen logical data.
Warning : no checks are done to ensure the type used to create the untyped logical data matches, it is the responsibility of the caller to ensure this is a valid conversion
- inline frozen_logical_data(
- backend_ctx_untyped bctx,
- logical_data<T> ld,
- access_mode m,
- data_place place,
- bool user_freeze,
-
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_untyped &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#
-
frozen_logical_data() = default#