aboutsummaryrefslogtreecommitdiff
path: root/rc3/runtime/test/affinity/format/proc_bind.c
diff options
context:
space:
mode:
Diffstat (limited to 'rc3/runtime/test/affinity/format/proc_bind.c')
-rw-r--r--rc3/runtime/test/affinity/format/proc_bind.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/rc3/runtime/test/affinity/format/proc_bind.c b/rc3/runtime/test/affinity/format/proc_bind.c
new file mode 100644
index 0000000..765c3ce
--- /dev/null
+++ b/rc3/runtime/test/affinity/format/proc_bind.c
@@ -0,0 +1,31 @@
+// RUN: %libomp-compile && env OMP_DISPLAY_AFFINITY=true OMP_PLACES='{0},{0,1},{0},{0,1},{0},{0,1},{0},{0,1},{0},{0,1},{0}' %libomp-run | %python %S/check.py -c 'CHECK' %s
+// REQUIRES: affinity
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <omp.h>
+
+int main(int argc, char** argv) {
+ omp_set_affinity_format("TESTER: tl:%L tn:%n nt:%N aff:{%A}");
+ omp_set_num_threads(8);
+ // Initial parallel
+ #pragma omp parallel proc_bind(spread)
+ { }
+ #pragma omp parallel proc_bind(spread)
+ { }
+ // Affinity changes here
+ #pragma omp parallel proc_bind(close)
+ { }
+ #pragma omp parallel proc_bind(close)
+ { }
+ // Affinity changes here
+ #pragma omp parallel proc_bind(master)
+ { }
+ #pragma omp parallel proc_bind(master)
+ { }
+ return 0;
+}
+
+// CHECK: num_threads=8 TESTER: tl:1 tn:[0-7] nt:8 aff:
+// CHECK: num_threads=8 TESTER: tl:1 tn:[0-7] nt:8 aff:
+// CHECK: num_threads=8 TESTER: tl:1 tn:[0-7] nt:8 aff: