Is gfortran capable to compile a High Performance Fortran (HPF) code ?

Richard E Maine Richard.Maine@nasa.gov
Tue Sep 13 22:12:00 GMT 2005


On Sep 13, 2005, at 2:18 PM, Janne Blomqvist wrote:

> Disclaimer: I have never used HPF, the text below is merely based on
> my understanding of HPF as I have read in books and on the net.

Me too.

> HPF... consists of comment directives ... as well as a few syntax 
> extensions

And also, according to the HPF web site (which isn't hard to find as it 
is the first google hit for hpf - if the OP wants definitive data 
instead of comparing rumors from colleagues, I'd think that the first 
place to look), a library of procedures.

If you just want the code to compile and work correctly, without any 
parallelism, then all you need is a compiler that implements the syntax 
extensions, plus a suitable library. The directives are supposed to 
have no effect on code correctness - only on the parallelization, and 
the directives just look like comments to a compiler that doesn't know 
about them. In principle, that means any f95 compiler should do, as f95 
includes the syntax extensions. All you should need is the library, 
which is not necessarily part of the compiler.

*BUT*

1. I don't know where to get a suitable library.  (I didn't even bother 
to look, so I don't know if one is readily available or not).

2. In any case, this doesn't get you any performance benefit. The only 
reason for doing this is if you want to be able to run a code using HPF 
for performance on a parallel machine, yet still be able to run that 
same code in non-parallel mode on a scalar machine.

As a followup on point 2 above, I can't improve on what Janne said:

> If you want the compiler to produce actual parallel code then you need
> a real HPF compiler. Gfortran is not a HPF compiler, and I think it is
> unlikely that it will ever become one either.

-- 
Richard Maine                |  Good judgment comes from experience;
Richard.Maine@nasa.gov       |  experience comes from bad judgment.
                             |        -- Mark Twain



More information about the Fortran mailing list