More on Who Uses G77?

(This page continues the explanation from Who Uses It?.)

Number Crunchers

The computing lingua franca of the number-crunching community has, for some time, been the programming language named Fortran, a name that has been claimed to derived from the phrase FORmula TRANslation.

Real Programmers

Due mostly to its advanced age, and the desire to preserve the huge investment in education and old code, Fortran has retained many less-than-elegant linguistic features. This often makes it the target, or butt, of jokes among the computer-science cognescenti, but the people using it are usually too busy getting real work done to notice. These people are Real Programmers, and they know it.

g77 offers Real Programmers a more consistent, portable dialect of FORTRAN 77 than they might otherwise find across the wide range of machines they (or their users) wish to use.

Weather Forecasts

For example, HIRLAM, while best suited for the sort of classic big iron, on which g77 generally doesn't run, also offers GNU fortran (as they call it) compatibility.

Los Alamos National Laboratories

Another example of g77 usage is found in the Avalon project at Los Alamos National Laboratories. (See question 13 in the FAQ.)

Computational Fluid Dynamics

FIRE

The following is a combination of two e-mails I received this month, with anti-spam-harvesting modifications.

From: Klaus Pachler <Klaus.Pachler at imech.TU-Chemnitz.DE>
Date: Wed, 8 Sep 1999 11:16:48 +0200 (METDST)
To: craig at jcb-sc.com
Subject: Re: g77 User
Content-Type: text/plain; charset=X-roman8
X-UIDL: 0e050f77a4a502045dc7f2f0c06c47c9

Dear James;

I am a CFDdeveloper who uses two solvers for two phase flow
applications on HP-UX and linux 6.1. Those codes are written in 
ANSI C and F77. G77 is used on the linux i686 computer running
the FIRE code. I am planning to port a MPI version of FIRE to
the linux system. The second code Mistral was originally 
written in Fortran, but completely converted to C.

the FIRE code makes roughly 250 000 lines Fortran code and 30 000 lines
C code, which means in fact 100 000 lines real Fortran 
code skipping all comments and unnecessary lines. I am talking about the
solver, while there is also a PRE and POST Processor, which has similar
size, but I didn't yet compile.
I used currently the following options

-m486 -malign-double -malign-loops=2 -malign-jumps=2 -maling-functions=2 
-O2 -fno-f2c  

for i686, though each hint for improving is highly welcomed!!
FIRE is a highly efficent vectorized code (~97 %) , which runs on Cray or
NEC computers in the Megaflop range for the whole job(including io etc)
Currently the performance of my i686 is half of the PARISC 8500 of a J5000 
HP-UX operating version 10.2 . Benchmarks showed that the intel could 
become as fast as the HP using NT4.0 and the cap compiler from MS / Digital;

       Yours Sincerely
                            Klaus

---------------------------------------------------------------------
Klaus Pachler ; TU Chemnitz, FB MB/VT, TTWL, FG MPF  ;  09126 Chemnitz
Raichenhainer Str. 70
email : klpa@IMech.TU-Chemnitz.DE      Tel. +49 371 531 4640
see also X500-entry                    Fax. +49 371 531 4644
URL : http://www.tu-chemnitz.de/mbv/TechnThDyn/mpf/
---------------------------------------------------------------------

(Note that I'm unsure what is meant by that last phrase. Perhaps he thinks the Digital, now Compaq, Fortran compiler for NT4.0 is derived from the mothballed Microsoft compiler. I believe that's not the case, that Compaq's compiler is based on longstanding Digital technology. But I no longer keep up with such matters.)

(Oh, someone emailed me suggesting he meant "KAP" instead of "cap". Well, that certainly makes more sense! KAP stands for Kuck & Associates Pre-processor.)


C -----------------------------------------------------------------------
C                   ----- GNU Fortran (g77) -----
C -----------------------------------------------------------------------
C
      PROGRAM G77
C
      COMMON/QUICKY/QNEWS,QWHAT,QWHO,QHOW,QWHERE,QRLEAS,QSTAT,QWANT,
     1  QY2K,QALIGN,QFUND,QF2C,QMAIL
C
      REAL BOF
C
      WHAT() = 2. * 3.14 * QWHAT
C
      READ *,STATUS,NEXT
      CALL GIMME(FUNDS,*999)
      PRINT *,'Goodies For Contributors!!'
      GO TO (999),NEXT
      CONTINUE
      INQUIRE (UNIT=99,NAME=WANTED)
      CALL WHO(CRUNCH)
999   STOP 3HWHY
      END
C
C -----------------------------------------------------------------------
C
C Copyright (C) 1999 James Craig Burley
C
C Last modified 2000-07-12
C
C -----------------------------------------------------------------------