summaryrefslogtreecommitdiffstats
path: root/openmp/runtime/test/lock
diff options
context:
space:
mode:
Diffstat (limited to 'openmp/runtime/test/lock')
-rw-r--r--openmp/runtime/test/lock/omp_init_lock.c42
1 files changed, 0 insertions, 42 deletions
diff --git a/openmp/runtime/test/lock/omp_init_lock.c b/openmp/runtime/test/lock/omp_init_lock.c
deleted file mode 100644
index 24b60d1ab6b..00000000000
--- a/openmp/runtime/test/lock/omp_init_lock.c
+++ /dev/null
@@ -1,42 +0,0 @@
-// RUN: %libomp-compile-and-run
-#include "omp_testsuite.h"
-#include <stdio.h>
-
-// This should be slightly less than KMP_I_LOCK_CHUNK, which is 1024
-#define LOCKS_PER_ITER 1000
-#define ITERATIONS (REPETITIONS + 1)
-
-// This tests concurrently using locks on one thread while initializing new
-// ones on another thread. This exercises the global lock pool.
-int test_omp_init_lock() {
- int i;
- omp_lock_t lcks[ITERATIONS * LOCKS_PER_ITER];
-#pragma omp parallel for schedule(static) num_threads(NUM_TASKS)
- for (i = 0; i < ITERATIONS; i++) {
- int j;
- omp_lock_t *my_lcks = &lcks[i * LOCKS_PER_ITER];
- for (j = 0; j < LOCKS_PER_ITER; j++) {
- omp_init_lock(&my_lcks[j]);
- }
- for (j = 0; j < LOCKS_PER_ITER * 100; j++) {
- omp_set_lock(&my_lcks[j % LOCKS_PER_ITER]);
- omp_unset_lock(&my_lcks[j % LOCKS_PER_ITER]);
- }
- }
- // Wait until all repititions are done. The test is exercising growth of
- // the global lock pool, which does not shrink when no locks are allocated.
- {
- int j;
- for (j = 0; j < ITERATIONS * LOCKS_PER_ITER; j++) {
- omp_destroy_lock(&lcks[j]);
- }
- }
-
- return 0;
-}
-
-int main() {
- // No use repeating this test, since it's exercising a private global pool
- // which is not reset between test iterations.
- return test_omp_init_lock();
-}
OpenPOWER on IntegriCloud