aboutsummaryrefslogtreecommitdiff
path: root/libgomp/libgomp.texi
diff options
context:
space:
mode:
authorTobias Burnus <tobias@codesourcery.com>2021-12-04 13:28:03 +0100
committerTobias Burnus <tobias@codesourcery.com>2021-12-04 13:28:03 +0100
commitb09af56214ed10dddfb99267a0c615b6a939e44d (patch)
tree9cd98830d6388b6490b01f7bcb3ed22af0bcca26 /libgomp/libgomp.texi
parentc060e5c49c40ddc8818e4489665650e3661b045c (diff)
downloadgcc-b09af56214ed10dddfb99267a0c615b6a939e44d.zip
gcc-b09af56214ed10dddfb99267a0c615b6a939e44d.tar.gz
gcc-b09af56214ed10dddfb99267a0c615b6a939e44d.tar.bz2
libgomp.texi: Update OMP_PLACES
libgomp/ChangeLog: * libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
Diffstat (limited to 'libgomp/libgomp.texi')
-rw-r--r--libgomp/libgomp.texi30
1 files changed, 19 insertions, 11 deletions
diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
index 2999609..6e3bf06 100644
--- a/libgomp/libgomp.texi
+++ b/libgomp/libgomp.texi
@@ -2031,25 +2031,33 @@ When undefined, @env{OMP_PROC_BIND} defaults to @code{TRUE} when
@table @asis
@item @emph{Description}:
The thread placement can be either specified using an abstract name or by an
-explicit list of the places. The abstract names @code{threads}, @code{cores}
-and @code{sockets} can be optionally followed by a positive number in
-parentheses, which denotes the how many places shall be created. With
-@code{threads} each place corresponds to a single hardware thread; @code{cores}
-to a single core with the corresponding number of hardware threads; and with
-@code{sockets} the place corresponds to a single socket. The resulting
-placement can be shown by setting the @env{OMP_DISPLAY_ENV} environment
-variable.
+explicit list of the places. The abstract names @code{threads}, @code{cores},
+@code{sockets}, @code{ll_caches} and @code{numa_domains} can be optionally
+followed by a positive number in parentheses, which denotes the how many places
+shall be created. With @code{threads} each place corresponds to a single
+hardware thread; @code{cores} to a single core with the corresponding number of
+hardware threads; with @code{sockets} the place corresponds to a single
+socket; with @code{ll_caches} to a set of cores that shares the last level
+cache on the device; and @code{numa_domains} to a set of cores for which their
+closest memory on the device is the same memory and at a similar distance from
+the cores. The resulting placement can be shown by setting the
+@env{OMP_DISPLAY_ENV} environment variable.
Alternatively, the placement can be specified explicitly as comma-separated
list of places. A place is specified by set of nonnegative numbers in curly
-braces, denoting the denoting the hardware threads. The hardware threads
+braces, denoting the hardware threads. The curly braces can be omitted
+when only a single number has been specified. The hardware threads
belonging to a place can either be specified as comma-separated list of
nonnegative thread numbers or using an interval. Multiple places can also be
either specified by a comma-separated list of places or by an interval. To
-specify an interval, a colon followed by the count is placed after after
+specify an interval, a colon followed by the count is placed after
the hardware thread number or the place. Optionally, the length can be
followed by a colon and the stride number -- otherwise a unit stride is
-assumed. For instance, the following specifies the same places list:
+assumed. Placing an exclamation mark (@code{!}) directly before a curly
+brace or numbers inside the curly braces (excluding intervals) will
+exclude those hardware threads.
+
+For instance, the following specifies the same places list:
@code{"@{0,1,2@}, @{3,4,6@}, @{7,8,9@}, @{10,11,12@}"};
@code{"@{0:3@}, @{3:3@}, @{7:3@}, @{10:3@}"}; and @code{"@{0:2@}:4:3"}.