ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid > Struct Template Reference
Inheritance diagram for ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >:
ttg_parsec::detail::parsec_ttg_task_base_t

Documentation

template<typename TT, bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
struct ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >

Definition at line 202 of file task.h.

Public Types

using key_type = typename TT::key_type
 
- Public Types inherited from ttg_parsec::detail::parsec_ttg_task_base_t
typedef void() release_task_fn(parsec_ttg_task_base_t *)
 

Public Member Functions

 parsec_ttg_task_t (parsec_thread_mempool_t *mempool, parsec_task_class_t *task_class, TT *tt_ptr)
 
 parsec_ttg_task_t (const key_type &key, parsec_thread_mempool_t *mempool, parsec_task_class_t *task_class, parsec_taskpool_t *taskpool, TT *tt_ptr, int32_t priority)
 
template<ttg::ExecutionSpace Space>
parsec_hook_return_t invoke_op ()
 
template<ttg::ExecutionSpace Space>
parsec_hook_return_t invoke_evaluate ()
 
parsec_key_t pkey ()
 
- Public Member Functions inherited from ttg_parsec::detail::parsec_ttg_task_base_t
void release_task ()
 
void set_dummy (bool d)
 
bool is_dummy ()
 

Static Public Member Functions

static void release_task (parsec_ttg_task_base_t *task_base)
 

Public Attributes

TTtt = nullptr
 
key_type key
 
std::array< stream_info_t, num_streamsstreams
 
device_state_t< TT::derived_has_device_op()> dev_state
 
ttg_data_copy_tcopies [num_copies] = { nullptr }
 
- Public Attributes inherited from ttg_parsec::detail::parsec_ttg_task_base_t
parsec_task_t parsec_task
 
int32_t in_data_count = 0
 
int32_t data_count = 0
 
ttg_data_copy_t ** copies
 
parsec_hash_table_item_t tt_ht_item = {}
 
release_task_fnrelease_task_cb = nullptr
 
device_ptr_tdev_ptr = nullptr
 
bool remove_from_hash = true
 
bool dummy = false
 
bool defer_writer = TTG_PARSEC_DEFER_WRITER
 
ttg_parsec_data_flags data_flags
 

Static Public Attributes

static constexpr size_t num_streams = TT::numins
 
static constexpr size_t num_copies
 

Additional Inherited Members

- Protected Member Functions inherited from ttg_parsec::detail::parsec_ttg_task_base_t
template<std::size_t i = 0, typename TT >
void init_stream_info_impl (TT *tt, std::array< stream_info_t, TT::numins > &streams)
 
template<typename TT >
void init_stream_info (TT *tt, std::array< stream_info_t, TT::numins > &streams)
 
 parsec_ttg_task_base_t (parsec_thread_mempool_t *mempool, parsec_task_class_t *task_class, int data_count, ttg_data_copy_t **copies, bool defer_writer=TTG_PARSEC_DEFER_WRITER)
 
 parsec_ttg_task_base_t (parsec_thread_mempool_t *mempool, parsec_task_class_t *task_class, parsec_taskpool_t *taskpool, int32_t priority, int data_count, ttg_data_copy_t **copies, release_task_fn *release_fn, bool defer_writer=TTG_PARSEC_DEFER_WRITER)
 

Member Typedef Documentation

◆ key_type

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
using ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::key_type = typename TT::key_type

Definition at line 203 of file task.h.

Constructor & Destructor Documentation

◆ parsec_ttg_task_t() [1/2]

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::parsec_ttg_task_t ( parsec_thread_mempool_t *  mempool,
parsec_task_class_t *  task_class,
TT tt_ptr 
)
inline

Definition at line 218 of file task.h.

◆ parsec_ttg_task_t() [2/2]

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::parsec_ttg_task_t ( const key_type key,
parsec_thread_mempool_t *  mempool,
parsec_task_class_t *  task_class,
parsec_taskpool_t *  taskpool,
TT tt_ptr,
int32_t  priority 
)
inline

Definition at line 228 of file task.h.

Member Function Documentation

◆ invoke_evaluate()

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
template<ttg::ExecutionSpace Space>
parsec_hook_return_t ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::invoke_evaluate ( )
inline

Definition at line 262 of file task.h.

◆ invoke_op()

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
template<ttg::ExecutionSpace Space>
parsec_hook_return_t ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::invoke_op ( )
inline

Definition at line 253 of file task.h.

◆ pkey()

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
parsec_key_t ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::pkey ( )
inline

Definition at line 270 of file task.h.

◆ release_task()

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
static void ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::release_task ( parsec_ttg_task_base_t task_base)
inlinestatic

Definition at line 246 of file task.h.

Member Data Documentation

◆ copies

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
ttg_data_copy_t* ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::copies[num_copies] = { nullptr }

Definition at line 216 of file task.h.

◆ dev_state

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
device_state_t<TT::derived_has_device_op()> ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::dev_state

Definition at line 215 of file task.h.

◆ key

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
key_type ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::key

Definition at line 209 of file task.h.

◆ num_copies

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
constexpr size_t ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::num_copies
staticconstexpr
Initial value:
= TT::derived_has_device_op() ? static_cast<size_t>(MAX_PARAM_COUNT)
static constexpr bool derived_has_device_op()
Definition: ttg.h:1246
static constexpr size_t num_streams
Definition: task.h:204

Definition at line 206 of file task.h.

◆ num_streams

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
constexpr size_t ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::num_streams = TT::numins
staticconstexpr

Definition at line 204 of file task.h.

◆ streams

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
std::array<stream_info_t, num_streams> ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::streams

Definition at line 210 of file task.h.

◆ tt

template<typename TT , bool KeyIsVoid = ttg::meta::is_void_v<typename TT::key_type>>
TT* ttg_parsec::detail::parsec_ttg_task_t< TT, KeyIsVoid >::tt = nullptr

Definition at line 208 of file task.h.


The documentation for this struct was generated from the following file: