[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gomp-discuss] [Gomp] supportlib - toy implementation
From: |
Jacob Weismann Poulsen |
Subject: |
[Gomp-discuss] [Gomp] supportlib - toy implementation |
Date: |
Tue, 18 Jan 2005 18:50:10 +0000 |
User-agent: |
Mutt/1.5.5.1+cvs20040105i |
Hi,
The other day I have played a bit with a toy implementation of
the support lib as proposed by Ross quite some time ago, cf.
http://lists.gnu.org/archive/html/gomp-discuss/2004-08/msg00000.html.
My toy implementation is based on pthread (just as Scott did with his
hello world sample posted earlier) but that is - of course - of less
importance to the design. I attach it if someone cares (there are
probably lots of bugs lurking around so try it only if you dare).
I still regard the mail from Ross to be the most complete design idea that we
have seen thus far and I honestly think that we should try to work from there.
I don't say that it's complete (Ross did not claim that either :)) and we
will probably have to tweak some of it quite a bit. On the other hand, I
don't believe that we will get all the details right in the first shot
anyhow. Thus, why not simply start from the best that we have got today
and try to learn from there. I don't mind following a direction that
at some point in the future may turn out to be wrong - as long as I have
had a jolly time along the way I'm happy with it.
If someone wishes to continue to work either on the design proposal that
Ross started (perhaps even Ross wishes to work on it again) or on the
implementation I would certainly like to join. I think that I will
continue to play a bit with the toy implementation.
Actually, I would like to try to complete the overall picture of the
implementation and try to automate the transformation of the
'#pragma omp parallel for' as in the sample below:
void sample(float *a, float *b, float *c, long n) {
long i;
#pragma omp parallel for
for (i=0; i < n; i++)
*a++ = *b++ + *c++;
}
I expect that a fix would take its offspring in the gomp_handle_clause()
(cf. line 170ff in the c-gomp.c stemming from the patch
http://gcc.gnu.org/ml/gcc-patches/2004-12/msg02017.html) but I haven't
looked closely at it yet. I think that it would be very useful if
someone with a better understanding of the internals of gcc would help.
Anyone who wishes to help me doing this ???
Cheers, Jacob
--
Jacob Weismann Poulsen <address@hidden>
Fingerprint: 9315 DC43 D2E4 4F70 3AA8 F8F0 9DA0 B765 F5C8 7D26
support.tar.gz
Description: Binary data
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gomp-discuss] [Gomp] supportlib - toy implementation,
Jacob Weismann Poulsen <=