ttg_parsec::detail::reducer_task_t Struct Reference
Inheritance diagram for ttg_parsec::detail::reducer_task_t:
ttg_parsec::detail::parsec_ttg_task_base_t

Documentation

Reducer task representing one or more stream reductions. A reducer task may be deferred on its first input (the object into which all other inputs are folded). Once that input becomes available the task is submitted and reduces all available inputs. Additional reducer tasks may be submitted until all required inputs have been processed.

Definition at line 339 of file task.h.

Public Member Functions

 reducer_task_t (parsec_ttg_task_base_t *task, parsec_thread_mempool_t *mempool, parsec_task_class_t *task_class, parsec_taskpool_t *taskpool, int32_t priority, bool is_first)
 
- 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

parsec_ttg_task_base_tparent_task
 
bool is_first
 
- 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
 

Additional Inherited Members

- Public Types inherited from ttg_parsec::detail::parsec_ttg_task_base_t
typedef void() release_task_fn(parsec_ttg_task_base_t *)
 
- 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)
 

Constructor & Destructor Documentation

◆ reducer_task_t()

ttg_parsec::detail::reducer_task_t::reducer_task_t ( parsec_ttg_task_base_t task,
parsec_thread_mempool_t *  mempool,
parsec_task_class_t *  task_class,
parsec_taskpool_t *  taskpool,
int32_t  priority,
bool  is_first 
)
inline

Definition at line 343 of file task.h.

Member Function Documentation

◆ release_task()

static void ttg_parsec::detail::reducer_task_t::release_task ( parsec_ttg_task_base_t task_base)
inlinestatic

Definition at line 359 of file task.h.

Member Data Documentation

◆ is_first

bool ttg_parsec::detail::reducer_task_t::is_first

Definition at line 341 of file task.h.

◆ parent_task

parsec_ttg_task_base_t* ttg_parsec::detail::reducer_task_t::parent_task

Definition at line 340 of file task.h.


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