summaryrefslogtreecommitdiffstats
path: root/openmp/runtime/src/kmp_settings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'openmp/runtime/src/kmp_settings.cpp')
-rw-r--r--openmp/runtime/src/kmp_settings.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/openmp/runtime/src/kmp_settings.cpp b/openmp/runtime/src/kmp_settings.cpp
index b282ffe4921..ed61a670081 100644
--- a/openmp/runtime/src/kmp_settings.cpp
+++ b/openmp/runtime/src/kmp_settings.cpp
@@ -5033,6 +5033,16 @@ void __kmp_env_initialize(char const *string) {
// affinity.
const char *var = "KMP_AFFINITY";
KMPAffinity::pick_api();
+#if KMP_USE_HWLOC
+ // If Hwloc topology discovery was requested but affinity was also disabled,
+ // then tell user that Hwloc request is being ignored and use default
+ // topology discovery method.
+ if (__kmp_affinity_top_method == affinity_top_method_hwloc &&
+ __kmp_affinity_dispatch->get_api_type() != KMPAffinity::HWLOC) {
+ KMP_WARNING(AffIgnoringHwloc, var);
+ __kmp_affinity_top_method = affinity_top_method_all;
+ }
+#endif
if (__kmp_affinity_type == affinity_disabled) {
KMP_AFFINITY_DISABLE();
} else if (!KMP_AFFINITY_CAPABLE()) {
OpenPOWER on IntegriCloud