|
From: | Lars Segerlund |
Subject: | Re: [Gomp-discuss] Architecture |
Date: | Tue, 21 Jan 2003 16:47:01 +0100 |
User-agent: | Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.2.1) Gecko/20021226 Debian/1.2.1-9 |
First, I think it's a good idea to ask the gcc people what they are doing.The thing about using tree-ssa was that if we included the necessary primitives for omp in the parse trees used by the optimizing and backend passes it might be possible to avoid building a dependency on a specific pthreading model.
The threading model could perhaps be implemented in the machine description instead, and thus increase the flexibility since a different threading model wouldn't require any change to the frontends, and thus reducing the complexity.
To add omp the directives specific for a language the frontend ( parsers ) would require a minimum of knowledge of omp, since in this way the work ( the major part ) would be done on the parse tree passed to the backend.
This hides the implementation details from the frontends, and should make it possible to support different combinations of thread libraries/native threads in an easy way.
( all this depends on if gcc works the way I think it does :-) , but there is quite a big likelyhood that is is soo )
Any thoughts ? Scott Robert Ladd wrote:
Should we coordinate with the g95 people? That projects has, unfortunately, broken into two groups now... one group is pushing for integration with gcc mainline, so I'll ask on their lists about their plans.
......
I suggest we start with the loop parallelism directives; these seem to be the simplest approach. Once we can parallelize fors and dos, we can tackle parallel regions.
.....
Third, that ge generate library or direct pthread calls depending on the current system in the backend. Also some model of the architecture is needed, shall we use a pthread pool ? and pthread reuse ? or how are we to progress ?Our first task, I think, is to decide on a threading model. I can look at what various OpenMP compilers do as well. I have several compilers (mostly Fortran) I can use to get an idea of different approaches. I think this will be our biggest challenge, given gcc's multi-platform focus. Are pthreads universal "enough", or do we need to take a generic view of threads? ..Scott Scott Robert Ladd Coyote Gulch Productions (http://www.coyotegulch.com) Professional programming for science and engineering; Interesting and unusual bits of very free code. _______________________________________________ Gomp-discuss mailing list address@hidden http://mail.nongnu.org/mailman/listinfo/gomp-discuss
[Prev in Thread] | Current Thread | [Next in Thread] |