diff --git a/etc/buildbot_hpx.sh b/etc/buildbot_hpx.sh index b8faf636..3063da16 100755 --- a/etc/buildbot_hpx.sh +++ b/etc/buildbot_hpx.sh @@ -158,7 +158,7 @@ test_step() export CTEST_OUTPUT_ON_FAILURE=1 export APEX_SCREEN_OUTPUT=1 make ${1} tests.examples - ctest -V --timeout 10 -R tests.examples + ctest --timeout 100 -R tests.examples } install_step() diff --git a/src/apex/apex.cpp b/src/apex/apex.cpp index 73906889..5839f0b0 100644 --- a/src/apex/apex.cpp +++ b/src/apex/apex.cpp @@ -1115,7 +1115,7 @@ std::shared_ptr update_task( APEX_ASSERT(wrapper != nullptr); task_identifier * id = task_identifier::get_task_id(timer_name); if (id != wrapper->get_task_id()) { - wrapper->aliases.insert(id); + wrapper->alias = id; /* printf("New alias: %s to %s\n", wrapper->task_id->get_name().c_str(), timer_name.c_str()); */ } diff --git a/src/apex/task_wrapper.hpp b/src/apex/task_wrapper.hpp index 70e64c50..24609f36 100644 --- a/src/apex/task_wrapper.hpp +++ b/src/apex/task_wrapper.hpp @@ -56,11 +56,11 @@ struct task_wrapper { */ std::vector data_ptr; /** - \brief An unordered set of other names for this task. If the task changes names + \brief If the task changes names after creation (due to the application of an annotation) then the alias becomes the new task_identifier for the task. */ - std::unordered_set aliases; + task_identifier* alias; /** \brief Constructor. */ @@ -69,22 +69,16 @@ struct task_wrapper { prof(nullptr), guid(0ull), parent_guid(0ull), - parent(nullptr) + parent(nullptr), + alias(nullptr) { } /** \brief Get the task_identifier for this task_wrapper. \returns A pointer to the task_identifier */ inline task_identifier * get_task_id(void) { - if (!aliases.empty()) { - task_identifier * id = nullptr; - // find the first alias that isn't the same as the original name - for (auto tmp : aliases) { - if (tmp != id) { - id = tmp; - return id; - } - } + if (alias != nullptr) { + return alias; } return task_id; }