I need to make t
static to each thread, how can I do that? I tried this but t
is not static private to each thread.
#pragma omp Parallel
{
traceRays();
}
...
...
void traceRays()
{
static float t = 1;
}
I need to make t
static to each thread, how can I do that? I tried this but t
is not static private to each thread.
#pragma omp Parallel
{
traceRays();
}
...
...
void traceRays()
{
static float t = 1;
}
if the static variable is not declared in the parallel region, then everytime you attempt to define in the parallel region use: #omp parallel private(t)
You can do it by just making t
threadprivate:
void traceRays()
{
static float t = 1;
#pragma omp threadprivate(t)
}