base class
More...
#include <macrotaskq.h>
|
| | MacroTaskBase () |
| |
| virtual | ~MacroTaskBase () |
| |
| virtual void | cleanup ()=0 |
| |
| virtual void | finalize_stage1 (World &, World *, Cloud &) |
| |
| virtual void | finalize_stage2 (World &, World *, Cloud &) |
| |
| long | get_owner_slot () const |
| |
| double | get_priority () const |
| |
| bool | is_complete () const |
| |
| bool | is_owned_by (const long slot) const |
| | an unowned task may be run by any subworld, an owned one only by its own
|
| |
| bool | is_running () const |
| |
| bool | is_waiting () const |
| |
| virtual void | print_me (std::string s="") const |
| |
| virtual void | print_me_as_table (std::string s="") const |
| |
| std::string | print_priority_and_status_to_string () const |
| |
| virtual void | run (World &world, Cloud &cloud, taskqT &taskq, const long element, const bool debug, const MacroTaskInfo policy)=0 |
| |
| void | set_complete () |
| |
| void | set_owner_slot (const long owner) |
| |
| void | set_priority (const double p) |
| |
| void | set_running () |
| |
| void | set_waiting () |
| |
| virtual bool | wants_node_local_reduction () const |
| | Finalize, for tasks that accumulate their own output.
|
| |
◆ taskqT
◆ Status
| Enumerator |
|---|
| Running | |
| Waiting | |
| Complete | |
| Unknown | |
◆ MacroTaskBase()
| madness::MacroTaskBase::MacroTaskBase |
( |
| ) |
|
|
inline |
◆ ~MacroTaskBase()
| virtual madness::MacroTaskBase::~MacroTaskBase |
( |
| ) |
|
|
inlinevirtual |
◆ cleanup()
| virtual void madness::MacroTaskBase::cleanup |
( |
| ) |
|
|
pure virtual |
◆ finalize_stage1()
| virtual void madness::MacroTaskBase::finalize_stage1 |
( |
World & |
, |
|
|
World * |
, |
|
|
Cloud & |
|
|
) |
| |
|
inlinevirtual |
◆ finalize_stage2()
| virtual void madness::MacroTaskBase::finalize_stage2 |
( |
World & |
, |
|
|
World * |
, |
|
|
Cloud & |
|
|
) |
| |
|
inlinevirtual |
◆ get_owner_slot()
| long madness::MacroTaskBase::get_owner_slot |
( |
| ) |
const |
|
inline |
◆ get_priority()
| double madness::MacroTaskBase::get_priority |
( |
| ) |
const |
|
inline |
◆ is_complete()
| bool madness::MacroTaskBase::is_complete |
( |
| ) |
const |
|
inline |
◆ is_owned_by()
| bool madness::MacroTaskBase::is_owned_by |
( |
const long |
slot | ) |
const |
|
inline |
◆ is_running()
| bool madness::MacroTaskBase::is_running |
( |
| ) |
const |
|
inline |
◆ is_waiting()
| bool madness::MacroTaskBase::is_waiting |
( |
| ) |
const |
|
inline |
◆ print_me()
| virtual void madness::MacroTaskBase::print_me |
( |
std::string |
s = "" | ) |
const |
|
inlinevirtual |
◆ print_me_as_table()
| virtual void madness::MacroTaskBase::print_me_as_table |
( |
std::string |
s = "" | ) |
const |
|
inlinevirtual |
◆ print_priority_and_status_to_string()
| std::string madness::MacroTaskBase::print_priority_and_status_to_string |
( |
| ) |
const |
|
inline |
◆ run()
| virtual void madness::MacroTaskBase::run |
( |
World & |
world, |
|
|
Cloud & |
cloud, |
|
|
taskqT & |
taskq, |
|
|
const long |
element, |
|
|
const bool |
debug, |
|
|
const MacroTaskInfo |
policy |
|
) |
| |
|
pure virtual |
◆ set_complete()
| void madness::MacroTaskBase::set_complete |
( |
| ) |
|
|
inline |
◆ set_owner_slot()
| void madness::MacroTaskBase::set_owner_slot |
( |
const long |
owner | ) |
|
|
inline |
◆ set_priority()
| void madness::MacroTaskBase::set_priority |
( |
const double |
p | ) |
|
|
inline |
◆ set_running()
| void madness::MacroTaskBase::set_running |
( |
| ) |
|
|
inline |
◆ set_waiting()
| void madness::MacroTaskBase::set_waiting |
( |
| ) |
|
|
inline |
◆ wants_node_local_reduction()
| virtual bool madness::MacroTaskBase::wants_node_local_reduction |
( |
| ) |
const |
|
inlinevirtual |
Finalize, for tasks that accumulate their own output.
run_all holds only base pointers, so these have to be virtual. Stage 1 reduces the per-subworld buffers within a node, stage 2 reduces across nodes into the universe result; a nodeworld of nullptr means one node, so stage 1 has nothing to do.
Reimplemented in madness::MacroTask< taskT >::MacroTaskInternal.
◆ operator<<
◆ owner_slot
| long madness::MacroTaskBase::owner_slot =-1 |
◆ priority
| double madness::MacroTaskBase::priority =1.0 |
◆ stat
The documentation for this class was generated from the following file: