50 lines · c
1// RUN: %gdb-compile 2>&1 | tee %t.compile2// RUN: env OMP_SCHEDULE=dynamic,2 %gdb-test -x %S/ompd_icvs.cmd %t 2>&1 | tee3// %t.out | FileCheck %s4 5#include <omp.h>6#include <stdio.h>7int main(void) {8 omp_set_max_active_levels(3);9 omp_set_dynamic(0);10 omp_set_num_threads(9);11#pragma omp parallel12 {13 omp_set_num_threads(5);14#pragma omp parallel15 {16#pragma omp single17 { printf("Inner: num_thds=%d\n", omp_get_num_threads()); }18 }19#pragma omp barrier20 omp_set_max_active_levels(0);21#pragma omp parallel22 {23#pragma omp single24 { printf("Inner: num_thds=%d\n", omp_get_num_threads()); }25 }26#pragma omp barrier27#pragma omp single28 { printf("Outer: num_thds=%d\n", omp_get_num_threads()); }29 }30 return 0;31}32// CHECK: Loaded OMPD lib successfully!33 34// CHECK: run-sched-var task dynamic,235// CHECK: levels-var parallel 236// CHECK: active-levels-var parallel 237// CHECK: team-size-var parallel 538 39// CHECK: levels-var parallel 240// CHECK: active-levels-var parallel 141// CHECK: team-size-var parallel 142 43// CHECK: levels-var parallel 144// CHECK: active-levels-var parallel 145// CHECK: team-size-var parallel 946 47// CHECK-NOT: Python Exception48// CHECK-NOT: The program is not being run.49// CHECK-NOT: No such file or directory50