gomp-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gomp-discuss] corrections to gompspecs.tex


From: Melvin Hadasht
Subject: [Gomp-discuss] corrections to gompspecs.tex
Date: Mon, 19 Jan 2004 19:02:11 +0100
User-agent: XetPan/0.0.48 libEtPan!/0.32

Hi all,

I've just discovered this project after reading comments on gcc's ML about 
the possibility of merging tree-ssa to 3.5. I should say that as a CFD engineer 
(researcher), I am very interested in seeing both a GNU fortran 95 and an 
OpenMP implementation.

I found that the gompspec.tex seems to be based on pre 2.0 OpenMP: the 
example says that a private variable has to be initialized to zero, but OpenMP 
specifications 2.0  say:

------8< From: fspecs20_bar.pdf, p35:

1162:
3. Variables declared as PRIVATE are undefined for each thread on entering the
   construct, and the corresponding shared variable is undefined on exit from a
   parallel construct.
------>8

This was added in the 2.0 specs. As you have agreed to only support 2.0, 
maybe this should be modified. I attached a small patch.

There is also a typo in savannah.nongnu.org summary page: the title has
"imp*r*ementation" instead of "imp*l*ementation".

According to the http://gcc.gnu.org/cvs.html, the gomp branch is in an 
inactive state due to limitations to the C parser. I read this ML and if I 
understand correctly it was decided to start with the C/C++ because gfortran 
was at that point not really usable. How about the current status of gfortran?
IIRC, it does have a specific parser. Could gfortran be sufficiently mature to 
allow resuming the work on gomp? I am willing to help, but I have currently 
not sufficiently knowledge with compiler internals (but I capable of bug 
hunting). Though, I am currently reading libgfortran and specifically its I/O 
part to see if it is thread safe and how to make it suitable for parallel 
programs.

Apple is now building dual CPU machines and has an OS that has a POSIX 
API. Apple also contributes and uses GCC as its standard compiler. According 
to their website and to a pdf presenting Xserve, they have the OpenMP compiler 
is from VAST which supports OpenMP 1.1 (2.0 is coming soon).
There is also http://phase.hpcc.jp/Omni/, a OpenMP C/F77 to C + library 
translator (and OdinMP). Would they be interested in helping a GCC 
implementation of OpenMP?

My experience in coding is primarly fortran77 and 90 on vectorial machines 
(Cray, NEC SX5, 4 years) and some short experience with OpenMP on SGI 
2000. I extended a CFD code and optimized it on these architectures. I am 
also involved in non-engineering software (contributing to Sylpheed-Claws 
mailer, and currently working on a multi-threaded mailer (XetPan)).

Best regards,

-- 
Melvin Hadasht




reply via email to

[Prev in Thread] Current Thread [Next in Thread]