1 // RUN: %libomp-compile && env OMP_DISPLAY_AFFINITY=true OMP_PLACES=threads OMP_PROC_BIND=spread,close KMP_HOT_TEAMS_MAX_LEVEL=2 %libomp-run | %python %S/check.py -c 'CHECK' %s 2 3 #include <stdio.h> 4 #include <stdlib.h> 5 #include <omp.h> 6 #include "omp_testsuite.h" 7 8 // Currently, KMP_HOT_TEAMS_MAX_LEVEL has to be equal to the 9 // nest depth for intuitive behavior main(int argc,char ** argv)10int main(int argc, char** argv) { 11 omp_set_affinity_format("TESTER: tl:%L tn:%n nt:%N"); 12 omp_set_nested(1); 13 #pragma omp parallel num_threads(4) 14 { 15 go_parallel_nthreads(3); 16 go_parallel_nthreads(3); 17 } 18 go_parallel_nthreads(4); 19 return get_exit_value(); 20 } 21 22 // CHECK: num_threads=4 TESTER: tl:1 tn:[0-3] nt:4 23 // CHECK: num_threads=3 TESTER: tl:2 tn:[0-2] nt:3 24 // CHECK: num_threads=3 TESTER: tl:2 tn:[0-2] nt:3 25 // CHECK: num_threads=3 TESTER: tl:2 tn:[0-2] nt:3 26 // CHECK: num_threads=3 TESTER: tl:2 tn:[0-2] nt:3 27 // CHECK: num_threads=4 TESTER: tl:1 tn:[0-3] nt:4 28