Home > Archive > Fortran > August 2007 > High Performance Fortran compiler?
You are viewing an archived Text-only version of the thread.
To view this thread in it's original format and/or if you want to reply to
this thread please [click here]
| Author |
High Performance Fortran compiler?
|
|
| Bart Vandewoestyne 2007-08-30, 8:07 am |
| I am completely new to High Performance Fortran but I am interested
in getting to learn about it and experiment with it. I am therefore
looking for a freely available HPF compiler. My requirements are:
* It should support as much as possible the latest HPF Language
Definition as in http://hpff.rice.edu/versions/index.htm
* It should be freely available (preferably Open Source or Public
Domain software). And I don't like trial periods of 30 days etc...
I came across the list at http://hpff.rice.edu/compilers/index.htm which
mentions G95 and SHPF... but since I'm not sure in how far G95 supports
the latest HPF Language Definition I guess that SHPF is my best option?
Is this correct?
Taking into consideration my requirements, what would be the best compiler
for me to pick?
Thanks,
Bart
--
"Share what you know. Learn what you don't."
| |
| Beliavsky 2007-08-30, 8:07 am |
| On Aug 30, 5:31 am, Bart Vandewoestyne
<MyFirstName.MyLastN...@telenet.be> wrote:
> I am completely new to High Performance Fortran but I am interested
> in getting to learn about it and experiment with it. I am therefore
> looking for a freely available HPF compiler.
Aspects of HPF live on in Fortran 95 and later versions of the
language, but HPF itself is dead, so I think your search is misguided.
| |
| Tobias Burnus 2007-08-30, 8:15 pm |
| Hi,
On Aug 30, 11:31 am, Bart Vandewoestyne
<MyFirstName.MyLastN...@telenet.be> wrote:
> I am completely new to High Performance Fortran but I am interested
> in getting to learn about it and experiment with it. I am therefore
> looking for a freely available HPF compiler. My requirements are:
>
> * It should support as much as possible the latest HPF Language
> Definition as inhttp://hpff.rice.edu/versions/index.htm
As Bart has already written, the High-Performace Fortran (HPF)
language is rather dead; Fortran 95 incorporated some items such as
FORALL and nested WHERE constructs and user-defined PURE and ELEMENTAL
procedures.
The advantage of sticking to Fortran 95 is that (nearly) all Fortran
compiler support it.
As high-performance usually implies parallelization: Many compilers
support OpenMP (http://en.wikipedia.org/wiki/OpenMP) parallelization
of the programs. The nice thing about OpenMP is that one can
succeedingly change one's program into a parallel program.
Additionally it can be still and flawlessly compiled as serial
program.
(The di vantage is that OpenMP is based on the concept of shared
memory thus it is not useful for distributed memory systems [ignoring
Intel's cluster OpenMP].)
Another alternative is to use MPI or similar libraries.
> * It should be freely available (preferably Open Source or Public
> Domain software). And I don't like trial periods of 30 days etc...
Both the g95 and gfortran are Open Source Fortan 95 compilers;
gfortran 4.2.0 (and newer) supports also OpenMP. In terms of speed
they are generally slower than the fastest commercial compiler, but
whether and by how much depends on your program, the commercial
compiler and the platform. On my AMD, ifort and sunf95 are on average
(geometric mean, Polyhedron test) 7% faster, Pathscale 16% faster than
gfortran 4.2.1/4.3.0 - but for some tests gfortran is fastest.
http://gcc.gnu.org/wiki/GFortran
http://g95.org/
The Sun Studio Fortran compiler is also free for non-commercial and
commercial use - at least if you use Solaris or Linux (i686 or
x86-64).
[By the way, you did not tell us about your platform.]
http://developers.sun.com/sunstudio/
Under certain restrictions, you might also be entitled to use the non-
commercial version of the Intel compiler under Linux.
http://www.intel.com/cd/software/pr...lers/284132.htm
I had almost forgotten it: One can also use the Open64 compiler (ia64
and x86-64); it is also free, but supports essentially nothing of
Fortran 2003.
http://www.open64.net/
> Taking into consideration my requirements, what would be the best compiler
> for me to pick?
I like gfortran best, but I'm also biased as I started the participate
in its development; gfortran is compared with g95 faster (mostly since
g95 is based on GCC 4.0 or optionally on GCC 4.1), supports OpenMP and
(for legacy programs) Cray Pointers. On the other hand, g95 is (still)
a bit more mature (fewer Fortran bugs, some more Fortran 2003
features) - gfortran is catching up though.
Whatever your default compiler becomes, it makes sense to have several
compilers - at least if you develop programs. In that case, I think
gfortran and g95 are a must. (As they are based on the same code, it
cannot harm to have also further compilers to cross check.)
Tobias
|
|
|
|
|