[Openmp-commits] [PATCH] D55026: Task Affinity API

Jonathan Peyton via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Thu Nov 29 12:07:33 PST 2018


This revision was automatically updated to reflect the committed changes.
Closed by commit rL347907: [OpenMP] Add stubs for Task affinity API (authored by jlpeyton, committed by ).
Herald added a subscriber: llvm-commits.

Changed prior to commit:
  https://reviews.llvm.org/D55026?vs=175761&id=175924#toc

Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D55026/new/

https://reviews.llvm.org/D55026

Files:
  openmp/trunk/runtime/src/dllexports
  openmp/trunk/runtime/src/kmp.h
  openmp/trunk/runtime/src/kmp_tasking.cpp


Index: openmp/trunk/runtime/src/dllexports
===================================================================
--- openmp/trunk/runtime/src/dllexports
+++ openmp/trunk/runtime/src/dllexports
@@ -405,6 +405,7 @@
         __kmpc_task_reduction_get_th_data   269
 # USED FOR 4.5 __kmpc_critical_with_hint    270
         __kmpc_get_target_offload           271
+	__kmpc_omp_reg_task_with_affinity   272
     %endif
 %endif
 
Index: openmp/trunk/runtime/src/kmp.h
===================================================================
--- openmp/trunk/runtime/src/kmp.h
+++ openmp/trunk/runtime/src/kmp.h
@@ -2222,6 +2222,18 @@
 #endif
 } kmp_dephash_t;
 
+#if OMP_50_ENABLED
+typedef struct kmp_task_affinity_info {
+  kmp_intptr_t base_addr;
+  size_t len;
+  struct {
+    bool flag1 : 1;
+    bool flag2 : 1;
+    kmp_int32 reserved : 30;
+  } flags;
+} kmp_task_affinity_info_t;
+#endif
+
 #endif
 
 #ifdef BUILD_TIED_TASK_STACK
@@ -3783,6 +3795,9 @@
 #if OMP_50_ENABLED
 KMP_EXPORT void *__kmpc_task_reduction_init(int gtid, int num_data, void *data);
 KMP_EXPORT void *__kmpc_task_reduction_get_th_data(int gtid, void *tg, void *d);
+KMP_EXPORT kmp_int32 __kmpc_omp_reg_task_with_affinity(
+    ident_t *loc_ref, kmp_int32 gtid, kmp_task_t *new_task, kmp_int32 naffins,
+    kmp_task_affinity_info_t *affin_list);
 #endif
 
 #endif
Index: openmp/trunk/runtime/src/kmp_tasking.cpp
===================================================================
--- openmp/trunk/runtime/src/kmp_tasking.cpp
+++ openmp/trunk/runtime/src/kmp_tasking.cpp
@@ -1392,6 +1392,28 @@
   return retval;
 }
 
+#if OMP_50_ENABLED
+/*!
+ at ingroup TASKING
+ at param loc_ref location of the original task directive
+ at param gtid Global Thread ID of encountering thread
+ at param new_task task thunk allocated by __kmpc_omp_task_alloc() for the ''new
+task''
+ at param naffins Number of affinity items
+ at param affin_list List of affinity items
+ at return Returns non-zero if registering affinity information was not successful.
+ Returns 0 if registration was successful
+This entry registers the affinity information attached to a task with the task
+thunk structure kmp_taskdata_t.
+*/
+kmp_int32
+__kmpc_omp_reg_task_with_affinity(ident_t *loc_ref, kmp_int32 gtid,
+                                  kmp_task_t *new_task, kmp_int32 naffins,
+                                  kmp_task_affinity_info_t *affin_list) {
+  return 0;
+}
+#endif
+
 //  __kmp_invoke_task: invoke the specified task
 //
 // gtid: global thread ID of caller


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55026.175924.patch
Type: text/x-patch
Size: 2496 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20181129/4918c2a2/attachment.bin>


More information about the Openmp-commits mailing list