blob: a808d92ee42dd08657d7a941d52a8011f0aa8d6b [file] [log] [blame]
Jim Cownie18d84732014-05-10 17:02:09 +00001/* Global headerfile of the OpenMP Testsuite */
2
3/* This file was created with the ompts_makeHeader.pl script using the following opions: */
4/* -f=ompts-c.conf -t=c */
5
6
7#ifndef OMP_TESTSUITE_H
8#define OMP_TESTSUITE_H
9
10#include <stdio.h>
11#include <omp.h>
12
13/* Version info */
14/**********************************************************/
15#define OMPTS_VERSION "3.0a"
16
17/* General */
18/**********************************************************/
19#define LOOPCOUNT 1000
20#define REPETITIONS 20
21/* following times are in seconds */
22#define SLEEPTIME 0.01
23#define SLEEPTIME_LONG 0.5
24
25/* Definitions for tasks */
26/**********************************************************/
27#define NUM_TASKS 25
28#define MAX_TASKS_PER_THREAD 5
Andrey Churbanova951e212015-04-29 14:36:38 +000029int test_omp_parallel_for_ordered(FILE * logfile); /* Test for omp parallel for ordered */
30int crosstest_omp_parallel_for_ordered(FILE * logfile); /* Crosstest for omp parallel for ordered */
31int test_omp_task_imp_firstprivate(FILE * logfile); /* Test for omp task */
32int crosstest_omp_task_imp_firstprivate(FILE * logfile); /* Crosstest for omp task */
33int test_omp_taskwait(FILE * logfile); /* Test for omp taskwait */
34int crosstest_omp_taskwait(FILE * logfile); /* Crosstest for omp taskwait */
35int test_omp_barrier(FILE * logfile); /* Test for omp barrier */
36int crosstest_omp_barrier(FILE * logfile); /* Crosstest for omp barrier */
37int test_omp_parallel_for_if(FILE * logfile); /* Test for omp parallel for if */
38int crosstest_omp_parallel_for_if(FILE * logfile); /* Crosstest for omp parallel for if */
39int test_omp_atomic(FILE * logfile); /* Test for omp atomic */
40int crosstest_omp_atomic(FILE * logfile); /* Crosstest for omp atomic */
41int test_omp_get_num_threads(FILE * logfile); /* Test for omp_get_num_threads */
42int crosstest_omp_get_num_threads(FILE * logfile); /* Crosstest for omp_get_num_threads */
43int test_omp_section_private(FILE * logfile); /* Test for omp section private */
44int crosstest_omp_section_private(FILE * logfile); /* Crosstest for omp section private */
45int test_omp_parallel_if(FILE * logfile); /* Test for omp parallel if */
46int crosstest_omp_parallel_if(FILE * logfile); /* Crosstest for omp parallel if */
47int test_omp_lock(FILE * logfile); /* Test for omp_lock */
48int crosstest_omp_lock(FILE * logfile); /* Crosstest for omp_lock */
Jim Cownie18d84732014-05-10 17:02:09 +000049int test_omp_parallel_shared(FILE * logfile); /* Test for omp parallel shared */
50int crosstest_omp_parallel_shared(FILE * logfile); /* Crosstest for omp parallel shared */
Andrey Churbanova951e212015-04-29 14:36:38 +000051int test_omp_task_imp_shared(FILE * logfile); /* Test for omp task */
52int crosstest_omp_task_imp_shared(FILE * logfile); /* Crosstest for omp task */
53int test_omp_task_private(FILE * logfile); /* Test for omp task private */
54int crosstest_omp_task_private(FILE * logfile); /* Crosstest for omp task private */
55int test_omp_section_lastprivate(FILE * logfile); /* Test for omp section lastprivate */
56int crosstest_omp_section_lastprivate(FILE * logfile); /* Crosstest for omp section lastprivate */
57int test_omp_parallel_firstprivate(FILE * logfile); /* Test for omp parallel firstprivate */
58int crosstest_omp_parallel_firstprivate(FILE * logfile); /* Crosstest for omp parallel firstprivate */
59int test_omp_for_auto(FILE * logfile); /* Test for omp for auto */
60int crosstest_omp_for_auto(FILE * logfile); /* Crosstest for omp for auto */
61int test_omp_for_schedule_static(FILE * logfile); /* Test for omp for schedule(static) */
62int crosstest_omp_for_schedule_static(FILE * logfile); /* Crosstest for omp for schedule(static) */
63int test_omp_threadprivate_for(FILE * logfile); /* Test for omp threadprivate */
64int crosstest_omp_threadprivate_for(FILE * logfile); /* Crosstest for omp threadprivate */
65int test_omp_task_untied(FILE * logfile); /* Test for omp task untied */
66int crosstest_omp_task_untied(FILE * logfile); /* Crosstest for omp task untied */
67int test_omp_parallel_private(FILE * logfile); /* Test for omp parallel private */
68int crosstest_omp_parallel_private(FILE * logfile); /* Crosstest for omp parallel private */
69int test_omp_single_nowait(FILE * logfile); /* Test for omp single nowait */
70int crosstest_omp_single_nowait(FILE * logfile); /* Crosstest for omp single nowait */
71int test_omp_critical(FILE * logfile); /* Test for omp critical */
72int crosstest_omp_critical(FILE * logfile); /* Crosstest for omp critical */
73int test_omp_get_wtick(FILE * logfile); /* Test for omp_get_wtick */
74int crosstest_omp_get_wtick(FILE * logfile); /* Crosstest for omp_get_wtick */
Jim Cownie18d84732014-05-10 17:02:09 +000075int test_omp_single(FILE * logfile); /* Test for omp single */
76int crosstest_omp_single(FILE * logfile); /* Crosstest for omp single */
77int test_omp_parallel_sections_reduction(FILE * logfile); /* Test for omp parallel sections reduction */
78int crosstest_omp_parallel_sections_reduction(FILE * logfile); /* Crosstest for omp parallel sections reduction */
Jim Cownie18d84732014-05-10 17:02:09 +000079int test_omp_taskyield(FILE * logfile); /* Test for omp taskyield */
80int crosstest_omp_taskyield(FILE * logfile); /* Crosstest for omp taskyield */
Andrey Churbanova951e212015-04-29 14:36:38 +000081int test_has_openmp(FILE * logfile); /* Test for _OPENMP */
82int crosstest_has_openmp(FILE * logfile); /* Crosstest for _OPENMP */
83int test_omp_parallel_for_lastprivate(FILE * logfile); /* Test for omp parallel for lastprivate */
84int crosstest_omp_parallel_for_lastprivate(FILE * logfile); /* Crosstest for omp parallel for lastprivate */
85int test_omp_parallel_sections_lastprivate(FILE * logfile); /* Test for omp parallel sections lastprivate */
86int crosstest_omp_parallel_sections_lastprivate(FILE * logfile); /* Crosstest for omp parallel sections lastprivate */
Jim Cownie18d84732014-05-10 17:02:09 +000087int test_omp_for_lastprivate(FILE * logfile); /* Test for omp for lastprivate */
88int crosstest_omp_for_lastprivate(FILE * logfile); /* Crosstest for omp for lastprivate */
Jim Cownie18d84732014-05-10 17:02:09 +000089int test_omp_parallel_sections_firstprivate(FILE * logfile); /* Test for omp parallel sections firstprivate */
90int crosstest_omp_parallel_sections_firstprivate(FILE * logfile); /* Crosstest for omp parallel sections firstprivate */
Andrey Churbanova951e212015-04-29 14:36:38 +000091int test_omp_parallel_for_reduction(FILE * logfile); /* Test for omp parallel for reduction */
92int crosstest_omp_parallel_for_reduction(FILE * logfile); /* Crosstest for omp parallel for reduction */
93int test_omp_test_lock(FILE * logfile); /* Test for omp_test_lock */
94int crosstest_omp_test_lock(FILE * logfile); /* Crosstest for omp_test_lock */
95int test_omp_parallel_for_firstprivate(FILE * logfile); /* Test for omp parallel for firstprivate */
96int crosstest_omp_parallel_for_firstprivate(FILE * logfile); /* Crosstest for omp parallel for firstprivate */
Jim Cownie18d84732014-05-10 17:02:09 +000097int test_omp_parallel_sections_private(FILE * logfile); /* Test for omp parallel sections private */
98int crosstest_omp_parallel_sections_private(FILE * logfile); /* Crosstest for omp parallel sections private */
Andrey Churbanova951e212015-04-29 14:36:38 +000099int test_omp_parallel_num_threads(FILE * logfile); /* Test for omp parellel num_threads */
100int crosstest_omp_parallel_num_threads(FILE * logfile); /* Crosstest for omp parellel num_threads */
Jim Cownie18d84732014-05-10 17:02:09 +0000101int test_omp_for_reduction(FILE * logfile); /* Test for omp for reduction */
102int crosstest_omp_for_reduction(FILE * logfile); /* Crosstest for omp for reduction */
Andrey Churbanova951e212015-04-29 14:36:38 +0000103int test_omp_sections_nowait(FILE * logfile); /* Test for omp parallel sections nowait */
104int crosstest_omp_sections_nowait(FILE * logfile); /* Crosstest for omp parallel sections nowait */
105int test_omp_parallel_reduction(FILE * logfile); /* Test for omp parallel reduction */
106int crosstest_omp_parallel_reduction(FILE * logfile); /* Crosstest for omp parallel reduction */
107int test_omp_nested(FILE * logfile); /* Test for omp_nested */
108int crosstest_omp_nested(FILE * logfile); /* Crosstest for omp_nested */
Jim Cownie18d84732014-05-10 17:02:09 +0000109int test_omp_threadprivate(FILE * logfile); /* Test for omp threadprivate */
110int crosstest_omp_threadprivate(FILE * logfile); /* Crosstest for omp threadprivate */
Andrey Churbanova951e212015-04-29 14:36:38 +0000111int test_omp_sections_reduction(FILE * logfile); /* Test for omp sections reduction */
112int crosstest_omp_sections_reduction(FILE * logfile); /* Crosstest for omp sections reduction */
Jim Cownie18d84732014-05-10 17:02:09 +0000113int test_omp_for_schedule_guided(FILE * logfile); /* Test for omp for schedule(guided) */
114int crosstest_omp_for_schedule_guided(FILE * logfile); /* Crosstest for omp for schedule(guided) */
Andrey Churbanova951e212015-04-29 14:36:38 +0000115int test_omp_task_final(FILE * logfile); /* Test for omp task final */
116int crosstest_omp_task_final(FILE * logfile); /* Crosstest for omp task final */
117int test_omp_parallel_for_private(FILE * logfile); /* Test for omp parallel for private */
118int crosstest_omp_parallel_for_private(FILE * logfile); /* Crosstest for omp parallel for private */
119int test_omp_flush(FILE * logfile); /* Test for omp flush */
120int crosstest_omp_flush(FILE * logfile); /* Crosstest for omp flush */
121int test_omp_for_private(FILE * logfile); /* Test for omp for private */
122int crosstest_omp_for_private(FILE * logfile); /* Crosstest for omp for private */
123int test_omp_for_ordered(FILE * logfile); /* Test for omp for ordered */
124int crosstest_omp_for_ordered(FILE * logfile); /* Crosstest for omp for ordered */
125int test_omp_single_copyprivate(FILE * logfile); /* Test for omp single copyprivate */
126int crosstest_omp_single_copyprivate(FILE * logfile); /* Crosstest for omp single copyprivate */
127int test_omp_task_if(FILE * logfile); /* Test for omp task if */
128int crosstest_omp_task_if(FILE * logfile); /* Crosstest for omp task if */
129int test_omp_section_firstprivate(FILE * logfile); /* Test for omp firstprivate */
130int crosstest_omp_section_firstprivate(FILE * logfile); /* Crosstest for omp firstprivate */
131int test_omp_for_schedule_static_3(FILE * logfile); /* Test for omp for schedule(static) */
132int crosstest_omp_for_schedule_static_3(FILE * logfile); /* Crosstest for omp for schedule(static) */
133int test_omp_task_firstprivate(FILE * logfile); /* Test for omp task firstprivate */
134int crosstest_omp_task_firstprivate(FILE * logfile); /* Crosstest for omp task firstprivate */
135int test_omp_for_collapse(FILE * logfile); /* Test for omp for collapse */
136int crosstest_omp_for_collapse(FILE * logfile); /* Crosstest for omp for collapse */
137int test_omp_in_parallel(FILE * logfile); /* Test for omp_in_parallel */
138int crosstest_omp_in_parallel(FILE * logfile); /* Crosstest for omp_in_parallel */
139int test_omp_for_schedule_dynamic(FILE * logfile); /* Test for omp for schedule(dynamic) */
140int crosstest_omp_for_schedule_dynamic(FILE * logfile); /* Crosstest for omp for schedule(dynamic) */
141int test_omp_for_firstprivate(FILE * logfile); /* Test for omp for firstprivate */
142int crosstest_omp_for_firstprivate(FILE * logfile); /* Crosstest for omp for firstprivate */
143int test_omp_master(FILE * logfile); /* Test for omp master */
144int crosstest_omp_master(FILE * logfile); /* Crosstest for omp master */
145int test_omp_single_private(FILE * logfile); /* Test for omp singel private */
146int crosstest_omp_single_private(FILE * logfile); /* Crosstest for omp singel private */
147int test_omp_task(FILE * logfile); /* Test for omp task */
148int crosstest_omp_task(FILE * logfile); /* Crosstest for omp task */
149int test_omp_parallel_default(FILE * logfile); /* Test for omp parallel default */
150int crosstest_omp_parallel_default(FILE * logfile); /* Crosstest for omp parallel default */
151int test_omp_for_nowait(FILE * logfile); /* Test for omp parallel for nowait */
152int crosstest_omp_for_nowait(FILE * logfile); /* Crosstest for omp parallel for nowait */
153int test_omp_test_nest_lock(FILE * logfile); /* Test for omp_test_nest_lock */
154int crosstest_omp_test_nest_lock(FILE * logfile); /* Crosstest for omp_test_nest_lock */
155int test_omp_nest_lock(FILE * logfile); /* Test for omp_nest_lock */
156int crosstest_omp_nest_lock(FILE * logfile); /* Crosstest for omp_nest_lock */
157int test_omp_parallel_copyin(FILE * logfile); /* Test for omp parallel copyin */
158int crosstest_omp_parallel_copyin(FILE * logfile); /* Crosstest for omp parallel copyin */
159int test_omp_master_3(FILE * logfile); /* Test for omp master */
160int crosstest_omp_master_3(FILE * logfile); /* Crosstest for omp master */
161int test_omp_get_wtime(FILE * logfile); /* Test for omp_get_wtime */
162int crosstest_omp_get_wtime(FILE * logfile); /* Crosstest for omp_get_wtime */
Jim Cownie18d84732014-05-10 17:02:09 +0000163
164#endif