[Openmp-commits] [PATCH] D103608: [OpenMP][Tools] Fix Archer handling of task dependencies
Joachim Protze via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Thu Jun 3 03:54:29 PDT 2021
protze.joachim created this revision.
protze.joachim added a reviewer: Hahnfeld.
protze.joachim added a project: OpenMP.
Herald added subscribers: guansong, yaxunl.
protze.joachim requested review of this revision.
Herald added a reviewer: jdoerfert.
Herald added a subscriber: sstefan1.
The current handling of dependencies in Archer has two flaws:
- annotation of dependency synchronization is not limited to sibling tasks
- annotation of in/out dependencies is based on the assumption, that dependency variables will rarely be byte-sized variables.
This patch introduces a map in the generating task to manage the dependency variables for the child tasks. The map is only accesses from the generating task, so no locking is necessary. This limits the dependency-based synchronization to sibling tasks.
This patch also introduces proper handling for new dependency types such as mutexinoutset and inoutset.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D103608
Files:
openmp/tools/archer/ompt-tsan.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103608.349512.patch
Type: text/x-patch
Size: 7900 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20210603/25fd0d71/attachment-0001.bin>
More information about the Openmp-commits
mailing list