3rd party FORTRAN compilers for A/UX 2.0

Jim Jagielski jim at jagubox.gsfc.nasa.gov
Wed Oct 24 21:42:30 AEST 1990


I promised a while ago that I would post some information about 3rd party
FORTRAN compilers for A/UX... so here it is.

A/UX supplies it's version of f77... hence the need for an alternative :)

For the past year or so, I've been using NKR Research's FORTRAN compiler
(Ver 3.1.1) and just a while ago I got Absoft's MacFortranII for A/UX
(Ver 2.1). I also have the Unisoft Optimizing FORTRAN compiler, but I hardly
ever use it, as I'll explain below.

One of my main considerations is VAX FORTRAN compatibility. The Unisoft
compiler does not provide this. In fact, it's "just" a FORTRAN-77 compiler.
It's VERY good and VERY fast (it uses the GreenHills compiler base), so
if all you need is a better f77, that this may be your choice.

NKR FORTRAN is a pretty complete implementation of f77 and it includes most
VAX FORTRAN extensions. It doesn't, however, supply the VAX extensions in
it's library, so if your code uses a lot of VAX function extensions (such
as COSD, SIND, etc...), then you must code in substitutes for them in your
program.

MacFortranII (for A/UX) is also a pretty complete implemenation of f77.
It supports VAX extensions and even includes VAX functions where needed.
It also supports FORTRAN 8X input as well as IBM VS FORTRAN free form source.

Now, let's compare NKR and Absoft. First of all, NKR compiles FAST, usually
taking 1/2 the time for Absoft (both with -O optimization... interestingly
enough, there is very little difference in Absoft compilation times between
using optimization and NOT using it). Absoft, however, produces substantially
smaller code (20-22%). The Absoft compiler is advertised as producing MUCH
faster code, but I haven't noticed THAT much of a difference. It's optimization
suite is very robust, however, including Loop Invariant Removal, Peephole
optimization, Strength Reduction and Unrolling. Greater speed may be achieved
by using more optimizations (the -O flag only access a few basic ones).

One very nice thing about the Absoft compiler is that it directly supports
sdb... NKR doesn't, although a version is in the works which should.

Absoft has a flag for everything... NKR has about 10. Of course, I'm not saying
that more flags (options) are necessarily better, just an observation.

Absoft also looks in the standard C library, so it's very easy to call C
library subroutines from your FORTRAN program... one nice touch is that if
you call Absoft with a *.c file, it'll call CC to compile it for you, thus
making compiling combination C/FORTRAN applications straight-foward.

One thing I noticed when I 1st got the Absoft compiler was that whenever I
compiled an application, I got an assembler "Table Overflow" warning. Now
my programs aren't small, but they aren't monsters! Since the front-end
of the compiler is a shell script, I was able to modify it to include the
"-A 2" flag to as and ld to increase the symbol table size... still, you'd
think that this wouldn't be needed.

Customer support for both companies is very good. Absoft has a BBS as well as
phone tech-support. NKR has always been very helpful and I would put their
support in the top 5.

Anyway, in conclusion, I would have to say that, in the present versions,
Absoft's macFortranII for A/UX is my choice... smaller code, sdb support,
full VAX extensions and robust optimizations put it over the edge (maybe
by selecting the right optimizations, I may even see that big performance
increase too!). NKR is very, very close and it's quick compilation would
almost put it over. However, it's lack of sdb support is a major stumbling-
block. In all honesty, you couldn't go wrong with either one.

Cheers!
--
=======================================================================
#include <std/disclaimer.h>
                                 =:^)
           Jim Jagielski                    NASA/GSFC, Code 711.1
     jim at jagubox.gsfc.nasa.gov               Greenbelt, MD 20771

"Kilimanjaro is a pretty tricky climb. Most of it's up, until you reach
 the very, very top, and then it tends to slope away rather sharply."



More information about the Comp.unix.aux mailing list