[Openmp-commits] [PATCH] D64080: [OPENMP]Make __kmpc_push_tripcount thread safe.
Alexey Bataev via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Wed Jul 3 15:04:47 PDT 2019
ABataev added a comment.
In D64080#1569319 <https://reviews.llvm.org/D64080#1569319>, @hfinkel wrote:
> In D64080#1569299 <https://reviews.llvm.org/D64080#1569299>, @ABataev wrote:
> > In D64080#1569266 <https://reviews.llvm.org/D64080#1569266>, @hfinkel wrote:
> > > In D64080#1568348 <https://reviews.llvm.org/D64080#1568348>, @ABataev wrote:
> > >
> > > > Added note.
> > >
> > >
> > > The patch description says that you add a trip count "per thread", but the code is adding a trip count per device. Could this still cause a problem if multiple threads have target regions for the same device?
> > No. We already have tripcount per device: each device stores its unique tripcount value, but only one. I extended the existing solution to have the tripcount not only per device, but also per host thread.
> Would there be any advantage to using `__kmpc_threadprivate_register` and `__kmpc_threadprivate` (or similar) instead of storing a map with thread ids?
Hard to tell, but definitely ee increase dependency between libomptarget and libomp. and, seems to me, threadprivate interface also uses some kind of hash table. We can use unordered_map instead.
CHANGES SINCE LAST ACTION
More information about the Openmp-commits