LLVM OpenMP
20.0.0git
tools
multiplex
tests
ompt-signal.h
Go to the documentation of this file.
1
// These functions are used to provide a signal-wait mechanism to enforce
2
// expected scheduling for the test cases. Conditional variable (s) needs to be
3
// shared! Initialize to 0
4
#include <unistd.h>
5
6
#define OMPT_SIGNAL(s) ompt_signal(&s)
7
// inline
8
void
ompt_signal
(
int
*
s
) {
9
#pragma omp atomic
10
(*s)++;
11
}
12
13
#define OMPT_WAIT(s, v) ompt_wait(&s, v)
14
// wait for s >= v
15
// inline
16
void
ompt_wait
(
int
*
s
,
int
v) {
17
int
wait = 0;
18
do
{
19
usleep(10);
20
#pragma omp atomic read
21
wait = (*s);
22
}
while
(wait < v);
23
}
s
void const char const char int ITT_FORMAT __itt_group_sync s
Definition:
ittnotify_static.h:154
ompt_signal
void ompt_signal(int *s)
Definition:
ompt-signal.h:14
ompt_wait
void ompt_wait(int *s, int v)
Definition:
ompt-signal.h:23
Generated on Thu Mar 13 2025 07:38:13 for LLVM OpenMP by
1.9.6