[gcc r16-5799] libgomp, amdgcn: document HSA_XNACK
Andrew Stubbs
ams@gcc.gnu.org
Mon Dec 1 14:45:23 GMT 2025
https://gcc.gnu.org/g:fe5c59ea997316da471de29f5720b650114035e9
commit r16-5799-gfe5c59ea997316da471de29f5720b650114035e9
Author: Andrew Stubbs <ams@baylibre.com>
Date: Fri Nov 28 16:20:46 2025 +0000
libgomp, amdgcn: document HSA_XNACK
Mention that the HSA_XNACK variable is automatically set by the toolchain.
libgomp/ChangeLog:
* libgomp.texi (AMD GCN): Mention HSA_XNACK is set automatically.
Diff:
---
libgomp/libgomp.texi | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/libgomp/libgomp.texi b/libgomp/libgomp.texi
index abe8ef75d8e7..ac96d2f29c76 100644
--- a/libgomp/libgomp.texi
+++ b/libgomp/libgomp.texi
@@ -7157,13 +7157,14 @@ The implementation remark:
such that the next reverse offload region is only executed after the previous
one returned.
@item OpenMP code that has a @code{requires} directive with @code{self_maps} or
- @code{unified_shared_memory} is only supported if all AMD GPUs have the
- @code{HSA_AMD_SYSTEM_INFO_SVM_ACCESSIBLE_BY_DEFAULT} property; for
- discrete GPUs, this may require setting the @code{HSA_XNACK} environment
- variable to @samp{1}; for systems with both an APU and a discrete GPU that
- does not support XNACK, consider using @code{ROCR_VISIBLE_DEVICES} to
- enable only the APU. If not supported, all AMD GPU devices are removed
- from the list of available devices (``host fallback'').
+ @code{unified_shared_memory} is only supported if @emph{all} the AMD GPUs
+ present have the @code{HSA_AMD_SYSTEM_INFO_SVM_ACCESSIBLE_BY_DEFAULT}
+ property; some systems require the "xnack" feature enabled for this to be
+ true, in which case the runtime will attempt to set the @code{HSA_XNACK}
+ environment variable to @samp{1} automatically (user-set values are not
+ overridden, and the setting only affects the executable itself and any
+ child processes). If any AMD GPU device is not supported, all AMD GPUs
+ are removed from the list of available devices (``host fallback'').
@item The available stack size can be changed using the @code{GCN_STACK_SIZE}
environment variable; the default is 32 kiB per thread.
@item Low-latency memory (@code{omp_low_lat_mem_space}) is supported when the
More information about the Gcc-cvs
mailing list