[all-commits] [llvm/llvm-project] 7c8f4e: [OpenMP] Avoid costly shadow map traversals whenev...
Joseph Huber via All-commits
all-commits at lists.llvm.org
Fri Dec 10 11:33:33 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 7c8f4e7b85ed98497f37571d72609f39a8eed447
https://github.com/llvm/llvm-project/commit/7c8f4e7b85ed98497f37571d72609f39a8eed447
Author: Joseph Huber <jhuber6 at vols.utk.edu>
Date: 2021-12-10 (Fri, 10 Dec 2021)
Changed paths:
M openmp/libomptarget/src/api.cpp
M openmp/libomptarget/src/device.cpp
M openmp/libomptarget/src/device.h
M openmp/libomptarget/src/omptarget.cpp
Log Message:
-----------
[OpenMP] Avoid costly shadow map traversals whenever possible
In the OpenMC app we saw `omp target update` spending an awful lot of
time in the shadow map traversal without ever doing any update there.
There are two cases that allow us to avoid the traversal completely.
The simplest thing is that small updates cannot (reasonably) contain
an attached pointer part. The other case requires to track in the
mapping table if an entry might contain an attached pointer as part.
Given that we have a single location shadow map entries are created,
the latter is actually fairly easy as well.
Reviewed By: grokos
Differential Revision: https://reviews.llvm.org/D113124
More information about the All-commits
mailing list