[all-commits] [llvm/llvm-project] 99f596: [OpenMP] Let primary thread gather topology info f...
Jonathan Peyton via All-commits
all-commits at lists.llvm.org
Tue Aug 22 13:57:46 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 99f5969565c3d8b7a731d9579e0dcf921bfc9478
https://github.com/llvm/llvm-project/commit/99f5969565c3d8b7a731d9579e0dcf921bfc9478
Author: Jonathan Peyton <jonathan.l.peyton at intel.com>
Date: 2023-08-22 (Tue, 22 Aug 2023)
Changed paths:
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_barrier.cpp
M openmp/runtime/src/kmp_runtime.cpp
M openmp/runtime/src/z_Linux_util.cpp
M openmp/runtime/src/z_Windows_NT_util.cpp
Log Message:
-----------
[OpenMP] Let primary thread gather topology info for each worker thread
This change has the primary thread create each thread's initial mask
and topology information so it is available immediately after
forking. The setting of mask/topology information is decoupled from the
actual binding. Also add this setting of topology information inside the
__kmp_partition_places mechanism for OMP_PLACES+OMP_PROC_BIND.
Without this, there could be a timing window after the primary
thread signals the workers to fork where worker threads have not yet
established their affinity mask or topology information.
Each worker thread will then bind to the location the primary thread
sets.
Differential Revision: https://reviews.llvm.org/D156727
More information about the All-commits
mailing list