[gomp] Challenges in Implementing OpenMP
Scott Robert Ladd
coyote@coyotegulch.com
Thu Oct 14 14:34:00 GMT 2004
Giovanni Bajo wrote:
> I would say this is better suited as a language independent pass, which would
> allow us not to duplicate too much work and effort.
You're probably correct.
> Of course, I am not sure about implications. I read some documentation on
> OpenMP, and it seems that the pragmas affect/transform code blocks to make them
> parallel.
Yes it does. The transformation can be rather extensive, and are
language dependent to some extent. Even C and C++ differ in subtle ways,
due to the nature of C++ objects.
> Now, if the C/C++/gfortran FEs produce some new GENERIC trees like
> OPENMP_PARALLEL_EXPR which wraps the statements affected by the pragmas, we can
> do the code transformation in a language independent fashion, probably even
> within gimplification (or immediatly before/after it). It has to be done before
> any kind of optimization of course (for many reasons, for instance the #pragmas
> do sometimes mention source variable names).
Yes; in fact, for some parallel architectures, OpenMP requires some
rather extensive reorganization of the code, including the creation of
new variables and functions.
..Scott
--
Scott Robert Ladd
site: http://www.coyotegulch.com
blog: http://chaoticcoyote.blogspot.com
More information about the Gcc
mailing list