|
template<typename SchedInfoParam , typename WFParam , typename ViewParam > |
| identity_task_impl (detail::edge_entry_base *edge_entry_ptr, SchedInfoParam &&si, WFParam const &, ViewParam &&view) |
|
result_type | operator() (tg_callback const &cb) final |
| Invokes workfunction with the specified view set.
|
|
bool | migratable (void) const noexcept final |
| Return true if task can be migrated. More...
|
|
void | migrate (std::size_t, tg_callback const &) final |
| Method overridden in Task to request migration of this task by task_graph. More...
|
|
bool | is_factory_task (void) const noexcept final |
| Pure virtual method implemented by derived classes to report whether or not they are instance of the class template factory_task . More...
|
|
std::size_t | task_id () const |
| Extract task identifier from bit field and return it.
|
|
p_object const & | comm_p_object (tg_callback const &cb) const |
| Use presence/lack of intra-PARAGRAPH successors to inform the execution in which task communication group this task's traffic should be placed. More...
|
|
virtual bool | finished (void) const |
| Return true if task has completed and does not need reinvocation. This default implementation is used by the non factory tasks, where the method should never be called.
|
|
virtual bool | reinvoke (tg_callback const &) |
| Reinvoke the task if it has not completed. This default implementation is used by the non factory tasks, where the method should never be called. More...
|
|
virtual bool | is_nested_pg_task (void) const noexcept |
| Allows detection of derived class acting as holder for nested paragraph. Used paragraph::operator() to detect starting tasks which are actually nested paragraphs to avoid passing them to the executor.
|
|
template<typename SchedulerEntry, typename EnableMigration, typename EnablePersistence, typename ViewSet>
class stapl::paragraph_impl::identity_task_impl< SchedulerEntry, EnableMigration, EnablePersistence, ViewSet >
Implementation base class for Task class template specializations involving identity tasks. Inspects the incoming edge and attempts to move / share the associated value object instead of copying.
template<typename SchedulerEntry, typename EnableMigration, typename EnablePersistence, typename ViewSet>
Return true
if task can be migrated.
This default implementation is used by the factory task, where migration is not allowed.
Reimplemented from stapl::paragraph_impl::task_base.
template<typename SchedulerEntry, typename EnableMigration, typename EnablePersistence, typename ViewSet>
Pure virtual method implemented by derived classes to report whether or not they are instance of the class template factory_task
.
Used by the runtime executor and scheduler to specialize scheduling (i.e., execute once immediately upon being made runnable).
Implements stapl::paragraph_impl::task_base.