Scope of active-levels-var / levels-var

Discuss the OpenMP 4.0 API Specifications released July 2013 (Read Only)
Forum rules
The OpenMP Forums are now closed to new posts. Please visit Stack Overflow if you are in need of help:
Posts: 3
Joined: Tue Jun 30, 2015 7:40 am

Scope of active-levels-var / levels-var

Post by ProtzeJoachim »

Hi everyone,

I currently work on the OpenMP debugging interface (OMPD). While checking the scopes of all the ICVs, I found that the scope of active-levels-var and levels-var is data environment. Based on this specification, every task should have knowledge on this ICVs. Is there a good reason why the scope is not the parallel region?

Also, the binding of omp_get(_active)?_level is the generating task.
Again: why not the parallel region?

Looking at the oss Intel runtime implementation, they implemented it like scope/binding is parallel region. From my point of view this totally make sense.

For OMPD the question is, does it make sense, to bind the get(_active)?_level function to tasks (following the wording of the OpenMP standard) or should we go for parallel regions (as most people would intuitively tend to)?