Autonomic Performance Environment for eXascale (APEX)
2.3.1
|
15 #ifdef APEX_HAVE_HPX_CONFIG
16 #include <hpx/config.hpp>
17 #include <hpx/modules/threading_base.hpp>
19 #include "task_identifier.hpp"
20 #include "profiler.hpp"
24 #include <unordered_set>
31 #ifdef APEX_HAVE_HPX_CONFIG
32 struct task_wrapper :
public hpx::util::external_timer::task_wrapper {
55 std::shared_ptr<task_wrapper>
parent;
83 if (
alias !=
nullptr) {
93 static std::shared_ptr<task_wrapper> tt_ptr(
nullptr);
94 static std::mutex mtx;
95 if (tt_ptr.get() ==
nullptr) {
97 if (tt_ptr.get() ==
nullptr) {
98 const std::string apex_main_str(
"APEX MAIN");
99 tt_ptr = std::make_shared<task_wrapper>();
100 tt_ptr->task_id = task_identifier::get_task_id(apex_main_str);
profiler * prof
A pointer to the active profiler object timing this task.
Definition: task_wrapper.hpp:43
std::vector< profiler * > data_ptr
Internal usage, used to manage HPX direct actions when their parent task is yielded by the runtime.
Definition: task_wrapper.hpp:60
static std::shared_ptr< task_wrapper > & get_apex_main_wrapper(void)
Static method to get a pre-defined task_wrapper around "main".
Definition: task_wrapper.hpp:92
task_identifier * task_id
A pointer to the task_identifier for this task_wrapper.
Definition: task_wrapper.hpp:39
A wrapper around APEX tasks.
Definition: task_wrapper.hpp:34
The main APEX namespace.
Definition: apex_api.hpp:50
task_wrapper(void)
Constructor.
Definition: task_wrapper.hpp:70
uint64_t guid
An internally generated GUID for this task.
Definition: task_wrapper.hpp:47
std::shared_ptr< task_wrapper > parent
A managed pointer to the parent task_wrapper for this task.
Definition: task_wrapper.hpp:55
task_identifier * get_task_id(void)
Get the task_identifier for this task_wrapper.
Definition: task_wrapper.hpp:82
uint64_t parent_guid
An internally generated GUID for the parent task of this task.
Definition: task_wrapper.hpp:51
task_identifier * alias
If the task changes names after creation (due to the application of an annotation) then the alias bec...
Definition: task_wrapper.hpp:66