[Openmp-commits] [openmp] 7ba4e96 - [OpenMP] Use new task type/flag for taskwait depend events.
Hansang Bae via Openmp-commits
openmp-commits at lists.llvm.org
Wed Jun 2 08:16:55 PDT 2021
Author: Hansang Bae
Date: 2021-06-02T10:16:38-05:00
New Revision: 7ba4e96ede0fdc73a9d12e42e51f81589213f7a2
URL: https://github.com/llvm/llvm-project/commit/7ba4e96ede0fdc73a9d12e42e51f81589213f7a2
DIFF: https://github.com/llvm/llvm-project/commit/7ba4e96ede0fdc73a9d12e42e51f81589213f7a2.diff
LOG: [OpenMP] Use new task type/flag for taskwait depend events.
Differential Revision: https://reviews.llvm.org/D103464
Added:
Modified:
openmp/runtime/src/kmp_taskdeps.cpp
openmp/runtime/test/ompt/callback.h
openmp/runtime/test/ompt/tasks/task_if0-depend.c
Removed:
################################################################################
diff --git a/openmp/runtime/src/kmp_taskdeps.cpp b/openmp/runtime/src/kmp_taskdeps.cpp
index 655e21f217216..89a7dbcaddf47 100644
--- a/openmp/runtime/src/kmp_taskdeps.cpp
+++ b/openmp/runtime/src/kmp_taskdeps.cpp
@@ -647,11 +647,7 @@ void __ompt_taskwait_dep_finish(kmp_taskdata_t *current_task,
ompt_data_t *taskwait_task_data) {
if (ompt_enabled.ompt_callback_task_schedule) {
ompt_callbacks.ompt_callback(ompt_callback_task_schedule)(
- &(current_task->ompt_task_info.task_data), ompt_task_switch,
- taskwait_task_data);
- ompt_callbacks.ompt_callback(ompt_callback_task_schedule)(
- taskwait_task_data, ompt_task_complete,
- &(current_task->ompt_task_info.task_data));
+ taskwait_task_data, ompt_taskwait_complete, NULL);
}
current_task->ompt_task_info.frame.enter_frame.ptr = NULL;
*taskwait_task_data = ompt_data_none;
@@ -700,7 +696,7 @@ void __kmpc_omp_wait_deps(ident_t *loc_ref, kmp_int32 gtid, kmp_int32 ndeps,
ompt_callbacks.ompt_callback(ompt_callback_task_create)(
&(current_task->ompt_task_info.task_data),
&(current_task->ompt_task_info.frame), taskwait_task_data,
- ompt_task_explicit | ompt_task_undeferred | ompt_task_mergeable, 1,
+ ompt_task_taskwait | ompt_task_undeferred | ompt_task_mergeable, 1,
OMPT_LOAD_OR_GET_RETURN_ADDRESS(gtid));
}
}
diff --git a/openmp/runtime/test/ompt/callback.h b/openmp/runtime/test/ompt/callback.h
index c21b16741d33d..2e9c057e9fd41 100644
--- a/openmp/runtime/test/ompt/callback.h
+++ b/openmp/runtime/test/ompt/callback.h
@@ -34,7 +34,8 @@ static const char *ompt_task_status_t_values[] = {
"ompt_task_detach", // 4
"ompt_task_early_fulfill", // 5
"ompt_task_late_fulfill", // 6
- "ompt_task_switch" // 7
+ "ompt_task_switch", // 7
+ "ompt_taskwait_complete" // 8
};
static const char* ompt_cancel_flag_t_values[] = {
"ompt_cancel_parallel",
@@ -67,6 +68,8 @@ static void format_task_type(int type, char *buffer) {
progress += sprintf(progress, "ompt_task_explicit");
if (type & ompt_task_target)
progress += sprintf(progress, "ompt_task_target");
+ if (type & ompt_task_taskwait)
+ progress += sprintf(progress, "ompt_task_taskwait");
if (type & ompt_task_undeferred)
progress += sprintf(progress, "|ompt_task_undeferred");
if (type & ompt_task_untied)
@@ -1015,7 +1018,8 @@ on_ompt_callback_task_schedule(
(second_task_data ? second_task_data->value : -1),
ompt_task_status_t_values[prior_task_status], prior_task_status);
if (prior_task_status == ompt_task_complete ||
- prior_task_status == ompt_task_late_fulfill) {
+ prior_task_status == ompt_task_late_fulfill ||
+ prior_task_status == ompt_taskwait_complete) {
printf("%" PRIu64 ":" _TOOL_PREFIX " ompt_event_task_end: task_id=%" PRIu64
"\n", ompt_get_thread_data()->value, first_task_data->value);
}
diff --git a/openmp/runtime/test/ompt/tasks/task_if0-depend.c b/openmp/runtime/test/ompt/tasks/task_if0-depend.c
index 2ecbf02faf449..f7fb6ef1069da 100644
--- a/openmp/runtime/test/ompt/tasks/task_if0-depend.c
+++ b/openmp/runtime/test/ompt/tasks/task_if0-depend.c
@@ -63,8 +63,8 @@ int main() {
// CHECK-SAME: parent_task_frame.reenter={{0x[0-f]+}},
// CHECK-SAME: new_task_id=[[SECOND_TASK:[0-f]+]],
// CHECK-SAME: codeptr_ra=[[RETURN_ADDRESS:0x[0-f]+]]{{[0-f][0-f]}},
-// CHECK-SAME: task_type=ompt_task_explicit|ompt_task_undeferred|
-// CHECK-SAME: ompt_task_mergeable=1207959556, has_dependences=yes
+// CHECK-SAME: task_type=ompt_task_taskwait|ompt_task_undeferred|
+// CHECK-SAME: ompt_task_mergeable=1207959568, has_dependences=yes
// CHECK: {{^}}[[MASTER_ID]]: ompt_event_dependences:
// CHECK-SAME: task_id=[[SECOND_TASK]], deps=[([[ADDRX]],
More information about the Openmp-commits
mailing list