[Openmp-commits] [openmp] 2020c98 - [OpenMP] Add L2-Tile equivalence for KNL

via Openmp-commits openmp-commits at lists.llvm.org
Tue Jun 1 12:17:43 PDT 2021


Author: Peyton, Jonathan L
Date: 2021-06-01T14:17:13-05:00
New Revision: 2020c981faa0e8807ad6b091495930664d4db175

URL: https://github.com/llvm/llvm-project/commit/2020c981faa0e8807ad6b091495930664d4db175
DIFF: https://github.com/llvm/llvm-project/commit/2020c981faa0e8807ad6b091495930664d4db175.diff

LOG: [OpenMP] Add L2-Tile equivalence for KNL

When on KNL and L2 or Tile layer is detected, manually add
the corresponding layer which is equivalent.

Differential Revision: https://reviews.llvm.org/D102865

Added: 
    

Modified: 
    openmp/runtime/src/kmp_affinity.cpp

Removed: 
    


################################################################################
diff  --git a/openmp/runtime/src/kmp_affinity.cpp b/openmp/runtime/src/kmp_affinity.cpp
index df08a906dc547..41c9dae689e48 100644
--- a/openmp/runtime/src/kmp_affinity.cpp
+++ b/openmp/runtime/src/kmp_affinity.cpp
@@ -599,6 +599,16 @@ void kmp_topology_t::canonicalize() {
   _set_globals();
   _set_last_level_cache();
 
+#if KMP_MIC_SUPPORTED
+  // Manually Add L2 = Tile equivalence
+  if (__kmp_mic_type == mic3) {
+    if (get_level(KMP_HW_L2) != -1)
+      set_equivalent_type(KMP_HW_TILE, KMP_HW_L2);
+    else if (get_level(KMP_HW_TILE) != -1)
+      set_equivalent_type(KMP_HW_L2, KMP_HW_TILE);
+  }
+#endif
+
   // Perform post canonicalization checking
   KMP_ASSERT(depth > 0);
   for (int level = 0; level < depth; ++level) {


        


More information about the Openmp-commits mailing list