libgomp.texi: Update OMP_PLACES

libgomp/ChangeLog:

	* libgomp.texi (OMP_PLACES): Extend description for OMP 5.1 changes.
This commit is contained in:
Tobias Burnus 2021-12-04 13:28:03 +01:00
parent c060e5c49c
commit b09af56214
1 changed files with 19 additions and 11 deletions

View File

@ -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"}.