[Openmp-commits] [PATCH] D123193: [OpenMP] libomp: Add missing ompt callbacks in hier barrier reduction

Misono Tomohiro via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Wed Apr 6 02:26:30 PDT 2022


t-msn created this revision.
Herald added subscribers: guansong, yaxunl.
Herald added a project: All.
t-msn added a reviewer: protze.joachim.
t-msn added a project: OpenMP.
t-msn added a subscriber: openmp-commits.
t-msn published this revision for review.
t-msn added a comment.
Herald added a reviewer: jdoerfert.
Herald added a subscriber: sstefan1.

I noticed this when running check-openmp with hier barrier by using https://reviews.llvm.org/D122645


Some code path in hier barrier gather misses ompt callbacks in reduction.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D123193

Files:
  openmp/runtime/src/kmp_barrier.cpp


Index: openmp/runtime/src/kmp_barrier.cpp
===================================================================
--- openmp/runtime/src/kmp_barrier.cpp
+++ openmp/runtime/src/kmp_barrier.cpp
@@ -1443,6 +1443,8 @@
           kmp_flag_64<> flag(&child_bar->b_arrived, new_state);
           flag.wait(this_thr, FALSE USE_ITT_BUILD_ARG(itt_sync_obj));
           if (reduce) {
+            OMPT_REDUCTION_DECL(this_thr, gtid);
+            OMPT_REDUCTION_BEGIN;
             KA_TRACE(100, ("__kmp_hierarchical_barrier_gather: T#%d(%d:%d) += "
                            "T#%d(%d:%d)\n",
                            gtid, team->t.t_id, tid,
@@ -1450,6 +1452,7 @@
                            child_tid));
             (*reduce)(this_thr->th.th_local.reduce_data,
                       child_thr->th.th_local.reduce_data);
+            OMPT_REDUCTION_END;
           }
         }
       }
@@ -1472,6 +1475,8 @@
           kmp_flag_64<> flag(&child_bar->b_arrived, new_state);
           flag.wait(this_thr, FALSE USE_ITT_BUILD_ARG(itt_sync_obj));
           if (reduce) {
+            OMPT_REDUCTION_DECL(this_thr, gtid);
+            OMPT_REDUCTION_BEGIN;
             KA_TRACE(100, ("__kmp_hierarchical_barrier_gather: T#%d(%d:%d) += "
                            "T#%d(%d:%d)\n",
                            gtid, team->t.t_id, tid,
@@ -1479,6 +1484,7 @@
                            child_tid));
             (*reduce)(this_thr->th.th_local.reduce_data,
                       child_thr->th.th_local.reduce_data);
+            OMPT_REDUCTION_END;
           }
         }
       }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D123193.420745.patch
Type: text/x-patch
Size: 1576 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20220406/c98a8ceb/attachment.bin>


More information about the Openmp-commits mailing list