F90 FAN's : Fortran 90 Frequently Asked about News.

A Fortran 90 addition to the Fortran FAQ.

Michel Olagnon - October 1st, 1993.
Last updated - April 18th, 1997.

Send flames and suggestions for improvement to Michel.Olagnon@ifremer.fr
The current updated version of this FAQ is available from ftp.ifremer.fr/ifremer/ditigo/fortran90.
It can be found on WWW at URLs: http://www.mols.susx.ac.uk/eggen/Fortran90/f90-faq.html (thanks to Bernd Eggen), http://www.kcl.ac.uk/kis/support/cc/fortran/engfaq.html (thanks to Ian Chivers), http://lenti.med.umn.edu/~mwd/f90-faq.html (thanks to Mark Dalton), and http://www.uni-karlsruhe.de/~Fortran90/olagnon-faq.html (thanks to Michael Hennecke), and http://www.ifremer.fr/ditigo/molagnon/fortran90/engfaq.html.

Contents :

1. Fortran 90 and Fortran 77
2. Available in Fortran 90:
2.1. Compilers
2.2. Code re-structurers and converters
2.3. Libraries and utilities
2.4. Tests and Benchmarks
2.5. Examples and repositories
2.6. Courses and Consultancy
3. Documentation:
3.1. Standards
3.2. Glossary
3.3. Journals
3.4. Tutorials and other documents
3.5. Books
3.6. Articles
3.7. WWW-Mosaic pages
4. Fortran 90 Benchmarking
5. Announced, foreseen, and rumours
6. Workshops, seminars, conferences
7. Developments, related languages
7.1. Standard
7.2. HPF
7.3. PVM
7.4. MPI
7.5. Parallel Programming
8. Addresses



1.0 Fortran 90 and Fortran 77:

Fortran 90 is, with very few exceptions, a superset of Fortran 77. The FAQ of the Usenet group Comp.lang.fortran deals with both standards, and may be obtained, like any FAQ, via anonymous ftp from rtfm.mit.edu, directory /pub/usenet/comp.lang.fortran. It is also available on the WWW FAQ's available on WWW.

The present document is an attempt to supplement that FAQ with some specific Fortran 90 information.

Anyone interested is also invited to join the mailbase list comp-fortran-90, by sending an e-mail message to mailbase@mailbase.ac.uk, containing the only line:
join comp-fortran-90 firstname lastname

The main extensions of Fortran 90 over Fortran 77 are:

``Pure'' Fortran 77 is F90 compatible. Yet, it is better to convert it to a ``mixed'' format, acceptable both as free and fixed source form Fortran 90, which only requires replacing C by ! as the comment character, to use & as the continuation line character, and to append it to the continued line, to remove blanks embedded inside constants or identifiers, and to check some intrinsics usage. Most of this can be done automatically.

Fortran 90 allows the Fortran 77 programmer to write code faster, to make it more legible, and to avoid many bugs. For a newcomer to programming, it is an opportunity to learn a modern language, with most recommended features, and yet to be in line with scientific and industrial engineering communities where Fortran is and is going to remain for a good while THE favourite language.

Fortran 95 is a minor revision of Fortran 90. The 3 main extensions with respect to that previous version are:


2.0 Available in Fortran 90:

Compilers

There is presently no free full F90 compiler. However, some compilers restricted to modern subsets of the language are free. These are ELF90 from Lahey for DOS 3.3 or higher, Windows 95, or Windows NT and F from Imagine1 for Linux. Compilers for these subsets are also available for other platforms, but presently not for free.
Absoft Pro Fortran v5.0 - for Power Mac

ACE f90 and HPF - for Parsytec PowerPC-based machines.

Apogee - highly optimizing Apogee-Fortran 90, C-DAC Fortran 90 (comes with debugger). Both compilers are for SPARC architectures.

APR xHPF 2.1 - HPF compiler ([Cray]T3D,[IBM]SP-2,[Intel] Paragon, [Dec Alpha]3000/900 275Mhz,[SGI Power Challenge]MIPS R8000, [Sun SPARC]2000 40Mhz)

CRAY CF90 - for Crays YMP and YMP-C90, Superserver 6400 and Sparc Solaris 2.3, plans for HP, SGI

DEC Fortran 90 V4.1 - for Digital UNIX Alpha and for OpenVMS Alpha, UNIX version including full HPF support and nearly full F95, Digital Parallel Software Environment (PSE), companion product on UNIX for HPF programming.
Digital Visual Fortran - for Windows NT and Windows 95.

EPC Fortran 90 - for Sparc Solaris 1.X and 2.X, IBM RS/6000, Intel 3/486 (SVR3&4, Solaris 2.x), SGI, Motorola 88000/100/100 (SVR3&4), MIPS

Fujitsu - full compiler for Sparc Solaris 1.1 and 2.x next: Sun Sparc (MP) 3Q/95, HP PA-RISC 4Q/95 MIPS ABI 4Q/95, SGI 4Q/95, Windows 1Q/96

HP HP Fortran 90 - full compiler for HP-UX 10.20, 10.10, 10.01 and SPP-UX

IBM XLF V4 - full compiler for RS/6000, with HPF extensions + KAP preprocessor - from KAI, for AIX V3.2 and V4.1

Imagine1 F - educational subset (dusty features removed, for inexpensive F90 learning) - free for Linux.

Lahey LF90 - for DOS, Windows including Pentium optimizations and Interacter Kit.

Lahey ELF90 - educational subset (dusty features removed, for inexpensive F90 learning) - freely downloadable.

Microsoft Fortran Powerstation V4.0 - for Windows NT 3.5 and Windows 95. See Digital Visual Fortran, as Microsoft ``handed over'' Fortran to DEC in Spring 97.

MicroWay - for DOS, OS/2, Unix, Linux.

NA Software F90+ - for OS/2, DOS/Windows3.1, Windows NT, Sun, Inmos T800 and PC Linux. Cost-effective personal version for Windows95

NA Software HPFPlus r2 -HPF for Linux PC PVM, Sun Sparc PVM or MPI, Meiko CS2 PVM or MPI, IBM SP2 (MPI).

NAG/ACE Optimizing f90 - release 1.0 for Sparc Solaris 2.

NAGWare f90 - uses C as intermediate language, now at rel:2.2, includes HPF extensions and exists in Linux version.

NEC FORTRAN90/SX - for its supercomputer SX series.

Pacific Sierra VAST/f90 - uses F77 as intermediate language, for Unix, VMS and Convex.

Parasoft - uses F77 as intermediate language

PGI - f90/HPF compiler, for SGI, IBM SP2, HP/Convex.

Salford FTN90 - PC implementation of NAG f90, direct generation of object code.

Salford FTN95 - full Fortran 95 compliant compiler for Extended DOS, Windows 3.1 and Win32 (NT and 95).

SGI - under IRIX 6.1 on R8000 machines: Power Challenge, Power Indigo 2, Power Onyx

SPARCompiler Fortran 90 - Sun's Cray-compatible compiler.

Stern C. S. CF90 - Cray-compatible for DEC OSF/1.

NOTE: Some vendors, such as Convex on their machines, offer a number of F90 extensions, for instance array syntax or ALLOCATE instruction.

Code re-structurers and converters

F90 code to Laheys free ELF90 A converter provided by Alan Miller for Numerical Recipes

Pacific-Sierra VAST/77to90 (see article by JKP in Fortran Journal 5/4)

LOFT90, by NA Software (available also under Linux)

FORESYS 1.4, GUI based High Performance Global Analysis, F77->F90 conversion, and parallelization.

FORGE Explorer 2.0, Distributed and shared memory Parallelizer, Applied Parallel Research, Inc.

NAGWare f90 tools, pretty-printer, declarations standardiser, precision standardiser, names changer.

CONVERT, conversion to F90 free format, proposed by Mike Metcalf via anonymous ftp on jkr.cc.rl.ac.uk (130.246.8.23), file /pub/MandR/convert.f90.

FORTRAN-lint for F77 and F90.

ftof90.c, minimal F77 -> F90 conversion.

f90ppr, F90 pre-processor similar to cpp.

flecs90, FLECS to F90 translator.

HPF mapper, for PVM or Parmacs, on Sun clusters: NA software.

Libraries and utilities

*Emacs* package free-format f90-mode Among the options one finds automatic matching and completion of all end-blocks (for example, indenting a line starting with end, finds the corresponding if/do/module... and checks/fills in the right kind of block and a possible name), it has an automatic fill-function which breaks a line and inserts &-signs (two if inside a string) when a line gets too long, different coloring for different features which is updated with every indent of a line. The most common commands are available via a menu.

Performance Library - LAPACK, BLAS, FFTPACK, VFFTPACK et LINPACK optimized for SPARC (Sun Performance Workshop).

INTERACTER - graphics library for Lahey LF90 and Salford FTN90, on 386/486/pentium + DOS Extenders (Int. Soft. Serv.).

Lahey has F90 components (manual, array intrinsics, front end,...) that they would like to license to others.

NAG fl90, numerical and statistical library, Sun 4, Sgi, DECstation, and IBM RISC System/6000.

NAG tool components (parser, semantic analyser, tree modification library and tree flattener).

Numerical recipes(Others give caveats !)

Cray LibSci(tm), numerical library for Crays and Sparc Solaris 2.3

MPFUN (Multiple Precision Floating Point Computation Package) by David W. Bailey, for Cray CF-90.

IMSL library (Visual Numerics)

Syntax verifier extracted from NAG compiler, put into public domain by NAG for Sun 3, Sun 4, Sgi.
Interactive checking of user's code over www at http://www.nag.co.uk/0/Forms/f90_interface.html

ISAM/VSAM/btree file structure, and Positional Key file structure ISF and PKF modules, shareware from Garnatz and Grovender, Inc

XLIB interface, from Garnatz and Grovender also.

CADNA, by professeur Vignes from Universite Pierre et Marie Curie, implements stochastic arithmetic in Fortran 90, and enables monitoring of precision loss and/or numerical instabilities during execution. (Control of Accuracy and Debugging for Numerical Aplications in Fortran) More information available from AERO (see also articles by J. Vignes), or Pr. Chesneaux (chesneaux@masi.ibp.fr).

ISO/IEC 1539-2 (Auxiliary standard) - Variable length character strings in Fortran (with a demonstration of implementation)

LAPACK, (minimaly) translated by myself, successfully passed all its tests with NAg-f90 2.0. I aggressively translated single precision Blas, and intend to do the same with other Blas as soon as I have time.

StopWatch, Measurement of execution times by W.F Mitchell

FFT module, by Michael Steffens

F90 makedepend, perl script by Kate Hedstrom

Automatic differentiation with Fortran programs


Tests and Benchmarks

Lahey Test suite - F77 & F90 (license agreement)

NAGware Test suite - tests for compilers (same as:
U_F90_TS Test suite - from Dr. Brian Smith (University of New Mexico), marketed by Unicomp and NAG.

SHAPE Test suite - 3400 tests of array instructions, from Spackman & Hendrickson, Inc.

Parasoft Test suite - 1500 tests for compilers

Quetzal Benchmark from John K. Prentice.

Benchmark of Syracuse University, via anonymous ftp on minerva.npac.syr.edu, in /old_pub.

Channel benchmark by John D. McCalpin, via anonymous ftp on perelandra.cms.udel.edu, in bench/channel.

Examples and repositories

Nag has set up a repository for contributed code:

WWW: http://www.nag.co.uk/1/nagware/Examples

The Fortran Market has established itself on the World Wide Web. "ONE place to find all information, products, and services related to Fortran"

WWW: http://www.fortran.com/fortran/market.html

Lahey Computer Systems downloadable F90 public domain code.

11,000 lines offered by Richard Maine via anonymous ftp on

ftp.dfrf.nasa.govfile is fdas.tar.Z

Many of the example codes and problem solutions from NUMERICAL METHODS FOR DIFFERENTIAL EQUATIONS - A computational approach by John R. Dormand have been coded in F.

Alan Miller's home page contains code for converting Numerical Recipes F90 code to make it compatible with Laheys free ELF90 compiler and a variety of other F90 code.

STEJOI, statistical package for joint occurrence events, on Sun, including source code and everything, via anonymous ftp on ftp.ifremer.fr the file is f90dvl.tar.Z

Module unsigned_32, for definition and use of unsigned 32 bits integers, also on ftp.ifremer.fr the file is unsi32.f90.Z

f90split, experimental version, similar to Unix BSD fsplit, but for free source form, also on ftp.ifremer.fr the file is f90split.f90.gz

Algorithm 999 by A.G. Buckley for unconstrained nonlinear minimization, on ftp.royalroads.ca

Courses and Consultancy

IT Independent Training Limited, UK
CTS, Germany
Unicomp, USA Pacific-Sierra Research Corp., USA CETech, Inc., USA


3.0 Documentation:

Standards

ISO/IEC 1539:1991 (E)

International Standard

Information technology - Programming langages - Fortran Somewhat expensive (CHF 210 ~ US$ 140 !) for instance, at ISO. Surprisingly enough, the identical, save for foreword and acknowledgements, ANSI standard X3.198-1992 is even more expensive. Walter S. Brainerd, Unicomp., offers:

- for 125 US$, an electronic ascii monouser version,

- for 125 + 10n US$, an electronic PostScript version, and the right to make n paper copies,

- or for 1000 US$, an electronic ditroff monouser version.

A version with French glossary is available as European norm NF EN 21539.

Glossary

Fortran terminology glossary by Ken Hawick hawick@npac.sys.edu


Journals

Fortran Journal ISSN 1060-0221, Enquiries: Walt Brainerd walt@fortran.com Subscriptions: Fortran Users Group / P.O. Box 4201 / Fullerton, CA 92634 (From 1997, free access from the Fortran Market)

Fortran Forum edited by Loren Meissner meissner@usfca.edu Subscriptions: ACM membership services: acmhelp@acm.org 10$ members, 20$ non members

Tutorials and other documents

University of Liverpool on-line tutorial.

P. Corde and H. Delouis, ``Support de cours Fortran 90 IDRIS''. This is a very complete reference (224 pp.), in French, for which the authors have agreed to give free access.

Pr. Loren Meissner has written an ELF subset (Essential Lahey Fortran) textbook, from his PWS book, and offers it on a royalty basis of $1.00 per copy, with advance royalty payment for 100 copies (LPMeissner@msn.com).

Copyright but freely available course material is available from Manchester Computer Centre.

Bo Einarsson and Yurij Shokin have written a tutorial on the transition from Fortran 77 to Fortran 90, with the title "Fortran 90 for the Fortran 77 programmer"

Michel Goossens has now installed a Fortran 90 tutorial on the World Wide Web (WWW) under the URL : F90 Tutorial/Overview- http://wwwcn.cern.ch/asdoc/f90.html There is no copyright on this material.

There is a Fortran (90) tutorial on the net that might be of some use Tutorial from University of New Mexico

A discussion about the various aspects of OO Fortran 90 programming, with comparison to C++, can be found at OO Fortran 90

See also:
http://www.nsc.liu.se/~boein/fortran.html

http://www.kcl.ac.uk/kis/support/cc/fortran/f90home.html

DEC

ORNL

ftp.th-darmstadt.de /pub/thd/fortran/f90/

The University of Liverpool

Belfast

Univ of New Mexico

Syracuse Univ.

Pacific-Sierra Research mini-tutorial about converting Fortran 77 programs to High Performance Fortran

EPCC Writing Data parallel programs with High Performance Fortran

Leicester


Books

* in English,

Adams, Brainerd, Martin, Smith. Fortran Top 90 - Ninety Key Features of Fortran 90, Unicomp, Sept. 1994.

Adams, Brainerd, Martin, Smith, Wagener. Fortran 90 Handbook, McGraw-Hill, 1992. ISBN 0-07-000406-4

Brainerd, W., Goldberg, and Adams. Programmer's guide to Fortran 90, 2nd edition, Unicomp, 1994. ISBN 0-07-000248-7

Chamberland, Luc. Fortran 90 : A Reference Guide, Prentice Hall. ISBN 0-13-397332-8.

Chivers, I. and Sleightholme, J. Introducing Fortran 90, Springer-Verlag, Sept. 1995. ISBN 3-540-19940-3

Counihan, Pitman. Fortran 90, 1991. ISBN 0-273-03073-6

Einarsson, B., Shokins, Y. Fortran 90 for the Fortran 77 programmer HTML-book.

Ellis, T.M.R, Lahey, T. and Philips, I. Fortran 90 Programming, Addison Wesley, 1994, with examples ISBN 0-201-54446-6

Gehrke, W. Fortran 95 Language Guide, Springer-Verlag, 1996. ISBN 3-540-76062-8 Softcover

Gehrke, W. The F Language Guide, Springer-Verlag, due June 1997. ISBN 3-540-76165-9 Softcover

Hahn, B.D., Edward Arnold. Fortran 90 for Scientists and Engineers, 1994. ISBN 0-340-60034-9

Kerrigan, J. Migrating to Fortran 90, O'Reilly and Associates, 1993 (2nd ed. Sept.94), with examples ISBN 1-56592-049-X

Charles H. Koelbel, David B. Loveman, Robert S. Schreiber, Guy L. Stelle Jr., Mary E. Zosel High Performance Fortran Handbook, MIT Press, 349 pages, 1994. ISBN 0-262-61094-9 $24.95 in paper back ISBN 0-262-11185-3 $45 for hard cover

Mayo, W.E. and Cwiakala, M. Schaum's Outline of Theory and Praxis -- Programming in Fortran 90, Mc Graw Hill, 1996. ISBN 0-07-041156-5

Meissner, L. Fortran 90, PWS Kent, Boston, 1995. ISBN 0-534-93372-6

Meissner, L. Essential Fortran 90 & 95, Unicomp, 1997. ISBN 0-9640135-3-3 $40

Metcalf, M. and Reid, J. Fortran 90/95 Explained, Oxford University Press, 1996. ISBN 0-19-851888-9

Metcalf, M. and Reid, J. The F programming Language, Oxford University Press, 1996. ISBN 0-19-850026-2

Morgan and Schonfelder, Programming in Fortran 90, Alfred Waller Ltd., 1993. ISBN 1-872474-06-3

Nyhoff and Leterman(?), Fortran 90 and Numerical Methods for Engineers and Scientists(?), Prentice Hall, 1997. ISBN ?

Redwine, C., Upgrading to Fortran 90, Springer, 1995 ISBN 0-387-97995-6

Schick W., Silverman Gordon, Fortran90 and engineering computations, John Wiley and sons, 1995 ISBN 0-471-58512-2

Smith, I.M. Programming in Fortran 90, Wiley, examples ISBN 0-471-94185-9

Vowels, R. Introduction to Fortran 90/95, Algorithms and Structured Programming ISBN 0-9596384-8-2

Willé, D.R. Advanced Scientific Fortran, John Wiley and sons, 1995 ISBN 0-471-95383-0
* in French,
Aberti, C. Fortran 90: Initiation a partir du Fortran 77, S.I. éditions, 1992. ISBN 2-909615-00-6

Ain, M. Savez-vous parler Fortran, Bibliotheque des universites (de Boeck), 1994. ISBN 2-8041-1755-3

Delannoy, C. Programmer en Fortran 90, Eyrolles, 1992. ISBN 2-212-08723-3

Dubesset, M. et Vignes, J. Les spécificites du Fortran 90, éditions Technip, 1993. ISBN 2-7108-0652-5

Lignelet, P. Fortran 90: Approche par la Pratique, S.I. éditions, 1993. ISBN 2-909615-01-4

Lignelet, P. Manuel complet du langage Fortran 90 et Fortran 95, Calcul intensif et génie logiciel, Masson, 1996. ISBN 2-225-85229-4

Lignelet, P. Structures de Données (et leurs algorithmes) en Fortran 90 / 95, Masson, 1996. ISBN 2-225-85373-8

Metcalf, M. et Reid, J. (translated by M. Caillet and B. Pichon) Fortran 90: Les concepts fondamentaux, AFNOR Editions, 1993. ISBN 2-12-486513-7

Olagnon, M. Traitement de données numériques avec Fortran 90, Masson, 1996. ISBN 2-225-85259-6
* in Chinese,
He Xingui, Xu Zuyuan, Wu Gingbao and Chen Mingyuan Programming Language FORTRAN 90, China Railway Publishing House, Beijing, 1994. ISBN 7-113-01788-6/TP.187
* in Finnish,
Haataja, Rahola and Ruokolainen Fortran 90, Center for Scientific Computing (Finland), 1996. ISBN 952-9821-33-6
* in German,
Brainerd, W.S., Goldberg Ch.H., Adams J.C., translated by Peter Thomas and Klaus G. Paul Fortran 90, Lehr- und Arbeitsbuch fuer das erfolgreiche Programmieren, R. Olbenbourg Verlag, Muenchen, 1994, ISBN 3-486-22102-7

Gehrke. Fortran 90 Referenz-Handbuch, Carl Hansen Verlag, 1991. ISBN 3-446163-21-2

Heisterkamp. Fortran 90: Eine Informelle Einfuehrung, BI-Wissenschaftsverlag, 1991. ISBN 3-411153-21-0

Langer. Programmieren in Fortran, Springer Verlag, 1993. ISBN 0-387-82446-4

Michel, T. Fortran 90 Lehr- und Handbuch, BI-Wissenschaftsverlag, 1994.

Schobert, Oldenburg. Programmierung in Fortran 90, 1991.

Ueberhuber, C., Meditz, P. Software-Entwicklung in Fortran 90, Springer Verlag, 1993. ISBN 3-211-82450-2

Wojcieszynski, B, Wojcieszynski, R. Fortran 90 Programmieren mit dem neuen Standard, Addison-Wesley, 1993. ISBN 3-89319-600-5
* in Dutch,
Brainerd, W.S., Goldberg Ch.H., Adams J.C., transl. by J.M. den Haan Fortran 90, Academic Service, 1991. ISBN 90-6233-722-8
* in Swedish,
Blom, K. Fortran90 - en introduktion, Studentlitteratur, Lund, 1994. ISN 91-44-47881-X

Einarsson, B., Shokins, Y. Fortran 90 for the Fortran 77 programmer HTML-book.
* in Russian,
Einarsson, B., Shokins, Y. Fortran 90 for the Fortran 77 programmer Printed book.

Metcalf, Reid (translated by P.Gorbounov) Fortran 90 Explained. Mir Publishers, Moscow, 1995. ISBN 5-03-001426-8 Russian customers: Mr. A.S.Popov, E-mail asp@mir.msk.su European residents: Petr.Gorbounov@cern.ch
* in Japanese
Metcalf, Reid (translated by H.Nisimura, H.Wada, K.Nishimura, M.Takata) Fortran 90 Explained, Kyoritsu Shuppan Co., Ltd., 1993 ISSN 0385-6984.

Articles

Appleby, D., FORTRAN First in a six-part series on languages that have stood the test of time -- BYTE, Sep. 1991, 147-150

Baker, S., Complying with Fortran90; How does the current crop of Fortran90 compilers measure up to the standard? -- Dr. Doff's Journal (Jan. 1995) p68-76

Bernheim, M., Fortran Mode d'emploi - Fortran 90 -- Intereditions (1991) 163-176

Brankin, R.W., Gladwell, I., A Fortran 90 Version of RKSUITE: An ODE Initial Value Solver, Annals of Numerical Mathematics, Vol 1, 1994, in press.

Buckley, A. G., Conversion to Fortran 90: A Case Study -- ACM TOMS Vol20 n 3 Sept.1994 308-353

Buckley, Albert G., Algorithm 999: A Fortran 90 code for unconstrained non linear minimisation -- ACM TOMS Vol20 n 3 Sept.1994 354-372

Chesneaux, J.M., Description d'utilisation du logiciel CADNA_F -- MASI 92.32 (1992) Institut Blaise Pascal, Paris

Corde, P., Girou, D., Fortran 90: la nouvelle norme -- Tribunix Dossiers calculateurs, Vol 8. No. 41 (1992) 12-17

Craig, C., Slishman G., Variants of Matrix Multiplication for Fortran90 SIGNUM Newsletter Vol 29 N 2 Apr. 1994 4-6

Delves L.M, Schonfelder J.L, Craven P. Fortran90; an Overview Oct.1993 IASC

Delves M, N.A Performance of Fortran90 Compilers Nov. 1994

Digital Corporation, Evolving from Fortran77 towards Fortran90, Fall Decus 1993, San Francisco

Dodson Z., A Fortran90 Tutorial Nov.1993

Dongarra, J., Du Croz J., Hammarling S., Wasniewski J., Zemla A., LAPACK90 The Fortran90 Interface for LAPACK, PARA95, Copenhagen 1995 Lecture Notes Springer Verlag, to be published.

Du Croz, Jeremy J., Building Libraries with Fortran 90 Fortran Journal 4/5, Sep./Oct 1992

Du Croz, J. The Nag Fortran90 library Nagua 14 april 1994 Oxford

Gehrke, Wilhelm Fachwoerterliste Englisch-Deutsch fuer Fortran 90, SPR.F90 2, RRZN, 18 pp., 1995

Gehrke, Wilhelm Fortran 90-Syntax: Eisenbahnschienen-Diagramme, SPR.F90 3, RRZN, 48 pp., 1994

Gehrke, Wilhelm Fachwoerterliste Englisch-Deutsch fuer Fortran 95, SPR.F95 2, RRZN, 19 pp., 1995

Gehrke, Wilhelm Fortran 95-Syntax: Eisenbahnschienen-Diagramme, SPR.F95 3, RRZN, 50 pp., 1995

Glassy, L., Tiny-Ninety: A subset of F90 for beginning programmers -- Fortran Journal 4/3, May/Jun. 1992, 2-6

Hanson, R.J., A design of high-performance Fortran 90 Libraries -- IMSL technical report series No. 9201 (1992)

Hanson, R.J., Operator and Function Modules with FORTRAN90 VNI Technical Report series No 9305

Hanson, R.J., Matrix multiplication in Fortran 90 using Strassen's algorithm -- Fortran Journal 4/3, May/Jun. 1992, 6-7

Hennecke, M., A Fortran 90 interface to random Number Generation -- Computer Physics Communications, in press

Iles, Robert, Fortran 90: The First Two Years -- Unicom Seminar on Fortran and C in Scientific Computing, 1993.

Iles, R., Palant, L., Fortran 90: 2 ans deja -- Tribunix No. 49 Mai/Juin 1993, 32-37.

Haataja, J. and Rahola, J. Fortran 90 in Scientific Computing CSC News magazine (Vol. 8, No 4, December 1996).

Hann, R. Nagware Fortran90 tools Nagua 14 april 1994 Oxford

Hill J.M.D The high performance Fortran library in Fortran90: sorting -Technical Report LPA7/TR02.9408 The London parallel applications center August 1994 (revise 9/1/1995)

Joubert, A.W The high performance Fortran library in Fortran90: prefix and suffix scans-Technical Report LPA7/TR01.9408 The London parallel applications center August 1994

Kearfott, R.B Algorithm 737: INTLIB: A Portable Fortran77 Interval Standard- Function Library ACM TOMS Vol20 n% 4, Dec. 1994 447-459

Kearfott, R.B A Fortran 90 environment for research and prototyping of enclosure algorithms for canstrained and unconstrained non linear equations ACM TOMS Vol 21, 1 , Juin 1995 63-78

Lahey, T., Fortran 90 is coming ! -- Programmer's Journal, Mar/Apr 1991.

Lignelet, P., Fortran -- Les Techniques de l'ingenieur, H2120, Dec 1993.

Mc Calpin, John D. Optimization of Fortran90 array notation : A Case Study Internal report College of Marine Studies, Univ. of Delaware submitted to "Scientific Programming" Jan. 1995

Maine, R., Review of NAG Fortran 90 translator -- Fortran Journal 3/6, Nov/dec 1991.

Marshall,A.C, Comparison between Sun, EPC and NAg Fortran 90 Compilers The University of Liverpool (Dec. 1996).

Marshall,A.C, Fortran 90 derived types, User defined operators, Modules and Object Oriented Facilities -- The University of Liverpool BCS seminar 1994 (12 Sep. 1992), 30-33

Metcalf, M., Recent progress in Fortran standardization -- Computer Physics Communications 57 (1989) 78-83.

Metcalf, M., Fortran 90 - A summary -- Int. Journal of modern Physics C, Vol. 1, Nos. 2&3 (1990) 193-206.

Metcalf, M., A derived data type for data analysis -- Computers in Physics, Nov/Dec 1991, 599-604.

Metcalf, M., A first encounter with Fortran 90 -- Fortran Journal 4/1, Jan/Feb 1992, 2-7.

Metcalf, M., An encounter with F90 -- Particle World 3/3 (1993), 130-134.

Metcalf, M., Fortran 90 Tutorial -- CERN Computer Newsletter, Nos. 206/207/208/209/210/211 (1992-1993).

Metcalf, M., Using the f90 compiler as a software tool -- CERN Computer Newsletter, No. 209 (1992).

Metcalf, M., Still programming after these years -- New Scientist, (12 Sep. 1992), 30-33

Morgan, S., Fortran90 An outline of the ISO standard -- BCS seminar 1994

Olagnon, M., Experience with NagWare f90 -- Fortran Journal 4/6, Nov/dec 1992, 2-5.

Olagnon, M., f90ppr A Fortran90 Pre-processor A Fortran 90 Pretty- printer, Fortran Journal Vol 7 n2 Mar/Apr 1995 pp8-14

de Polignac, Christian, Du Fortran VAX au Fortran 90 -- Decus, Paris, 7 Avril 1993.

de Polignac, Christian, Interfacing a Fortran77 multiple precision package using Fortran90 -- Nagua, Oxford, 14 april 1994.

Prentice, John K., Fortran 90 benchmark results -- Fortran Journal 5/3, May/June 1993.

Prentice, John K., Performance benchmarks for Fortran90 compilers -- Mathematech Vol1 n1 1994, 66-73

Prentice, John K., Ameko, A.K., Performance benchmarks for selected Fortran90 compilers (to appear in Fortran Journal)

Reid, John, The Fortran 90 Standard -- Programming environments for high level scientific problem solving, Gaffney ed., IEEE Trans., North-Holland (1992), 343-348.

Reid, John, Fortran 90, the language for scientific computing in the 1990s --Unicom Seminar on Fortran and C in Scientific Computing, 1992

Reid, John, The advantages of Fortran 90 -- Computing 48, 219-238.

Reid, John. Fortran90: the future -- Nagua 14 april 1994 Oxford

de Roeck, Yann-Herve, Plessix, Rene-Edouard, Combining F90 and PVM to construct synthetic seismograms by ray-tracing -- proc. IEEE Oceans 94.

Robin, F., Fortran 90 et High Performance Fortran, Bulletin technique CEA, Oct. 1992, 3-7.

Sawyer, M., A summary of Fortran 90 -- EPCC-TN92-04, Univ. of Edinburgh, (1992).

Schonfelder, J.L., Semantic extension possibilities in the proposed new Fortran -- Software practice and experience, Vol.19, (1989), 529-551.

Schonfelder, J.L., Morgan, J.S., Dynamic strings in Fortran 90 -- Software practice and experience, Vol.20(12), (1990), 1259-1271.

Schonfelder, J.L. High Performance Fortran and Fortran95 -- University of Liverpool Nov. 1994

Scott, Kilpatrick and Maley The formal specification of abstract data types and their implementation in Fortran 90 Computer Physics Communications 84 (1994) 201-225.

Sipelstein, J.M., Blelloch, G.E., Collection-oriented languages -- Proceedings of the IEEE, Vol. 79, No. 4, (1991), 504-530.

Vignes, Jean, Vers un calcul scientifique fiable : l'arithmetique stochastique -- La Vie des Sciences, Comptes rendus, serie generale, tome 10, 1993, No 2, 81-101.

Vignes, Jean, A stochastic arithmetic for reliable scientific computation MATCOM 940 - Mathematics and Computers in Simulation 35 (1993) 233-261.

Walker, D.W., A Fortran 90 code for magnetohydrodynamics. Part I: banded convolution -- Oak Ridge National Lab. report TM-12032 (1992).

Walter, W., Fortran 90: Was bringt der neue Fortran-Standard fuer das numerische Programmieren ? -- Jahrbuch Ueberblicke Mathematik Vieweg, (1991) 151-174.

Walter W.V Fortran XSC: A portable Fortran90 module library for accurate and reliable scientific computing -- Computing Supplementum 9, 265-286

Wampler, K. Dean, The Object-Oriented programming Paradigm and Fortran programs -- Computers in Physics, Jul/Aug 1990, 385-394.

Ward, T. The world's first Fortran90 compiler. PROGRAM NOW March 1992, 67-69

Willhoft, Robert G., Comparison of the functional Power of APL2 and Fortran 90 -- APL Quote Quad, 1991

Fortran90 at NAS: Perceptions and plans RND-93-001

3.6 - Other places for Help on Fortran 90



4.- Fortran 90 Benchmarking

An interesting article by John K. Prentice appeared in the May/June 93 issue of Fortran Journal. He also gave a new one in the Nov/Dec 94 issue.

I made some tests myself with LAPACK, and got a ratio of 10 between Sun f77 and Nag f90 2.0 when no source change was performed. With an aggressive rewriting, especially using array instructions and intrinsics, the ratio gets down to 2, which is also that of a f77 [sd]axpy to a C one.

On actual applications, this ratio seems to be much closer to 1, and even sometimes in favor of Fortran 90. On Sept. 7th, 1993, John wrote "I think there is in fact beginning to be a quite large body of evidence to suggest that most of the efficiency fears about F90 are unfounded."

For Nag f90 on workstations, the effect of the underlying C compiler (gcc, vendor, etc...) seems very limited (less than 4%).

With more recent F90 compilers, performance seems at least as good and often better than with the corresponding F77 compiler, for old F77 code. For instance, Lahey reports improvement from 8.5 to 14.1 Mflops with linpack on a pentium between EM/32 and their F90 compiler.


5.0 Announced, foreseen, and rumours

FORTNER Research (formerly Laguage Systems Corp) expects to deliver f90 for Macintoshes in 1996.

Absoft Pro Fortran for Windows (2nd-3rd Quarter 97)

EPC compiler for HP and Convex. No known time-scale

MATLAB compatibility with PowerStationFortran 90 (1st quarter 96)


6.0 Workshops, seminars, conferences

SEL-HPC: the London and South-East centre for High Performance Computing
NAG Seminars


7.- Developments, related languages

Standard

Work did not stop with the publication of the Fortran 90 standard. A new release is scheduled for 1996 (called 95), mainly devoted to clarifications, corrections and interpretations. It is currently being circulated as a draft for comments. A more important revision is scheduled for 2000 (or 2001 ? called F2k though C.Burley's F00 is a pleasant alternative). Some interim features are to be processed as "technical reports" and incorporated in the next major upgrade, now known as "Fortran 2000" and planned for release around the year 2000. The features for which interim technical reports have been proposed are the following: Floating-point exception handling Interoperability with C Parammeterized derived types and allocatable components However, the last of these lacks support in some quarters.
The ISO working group devoted to the evolution of Fortran is WG5. Inputs are received from the National bodies (X3J3 in the USA). Documents related to the work of X3J3 can be found via anonymous ftp on ftp.ncsa.uiuc.edu, directory x3j3.

HPF

High Performance Fortran (HPF) is a language for programming massively parallel architectures. It lets the user insert directives for code and data distribution among the processors in the (Fortran 90) code.
Electronic copies of HPF draft specification are available by anonymous
FTP from the following sources:
Machine name File name
titan.cs.rice.edu - public/HPFF/draft/hpf-v10-final.tar
titan.cs.rice.edu - public/HPFF/draft/hpf-v10-final.tar.Z
titan.cs.rice.edu - public/HPFF/draft/hpf-v10-final.ps
titan.cs.rice.edu - public/HPFF/draft/hpf-v10-final.ps.Z
think.com - public/HPFF/hpf-v10-final.ps.Z
ftp.gmd.de - hpf-europe/hpf-v10-final.ps.Z
theory.tc.cornell.edu - pub/hpf-v10-final.ps.Z
minerva.npac.syr.edu - public/hpf-v10-final.tar.Z
A on-line tutorial from University of Liverpool.
A course on HPF is freely available from Edinburgh.
Other sources of information:
Karlsruhe University
Liverpool University
www.lpac.ac.uk/SEL-HPC

PVM

Parallel Virtual Machine consists of a library and a run-time environment which allow the distribution of a program over a network of (even heterogeneous) computers. It works with Fortran 77, C and to some extent Fortran 90. One can refer to the article by Y-H de Roeck and R-E Plessix, and a set of example wrapper routines for the PVM calls is available as:
ftp.ifremer.fr:ifremer/ditigo/fortran90/pvm2f90.tar.gz

There is a usenet comp.parallel.pvm group, and the FAQ for it can be found via anonymous ftp on:
comp.parallel.pvm FAQ's on rtfm.mit.edu, /pub/usenet

MPI

MPI (Message Passing Interface) is the standard for multicomputer and cluster message passing introduced by the Message Passing Interface Forum in April 1994.

Parallel Programming

An interesting report can be obtained via anonymous ftp on
bulldog.wes.army.mil:/pub/report.ps.Z, for a large review of products related to parallel systems programming.


8.0 Addresses

3ip, 104, rue Castagnary, F-75015 Paris, France tel: +33 1 48 56 23 33, fax: +33 1 48 56 23 44

Absoft, 2781 Bond Street Rochester Hills, MI 48309 USA tel: (810) 853-0050 , Fax: (810) 853-0108 fortran@absoft.com

ACE, Van Eeghenstraat 100, 1071 Gl Amsterdam, Netherlands tel: +31 20 6646416, fax: +31 20 6750389 http://www.ace.nl/

AERO, Mr. Berthon, 3 av. de l'opera. F-75001 Paris, France tel: +33 1 44 55 30 80, fax: +33 1 40 15 95 54

AFNOR, Tour Europe, Cedex 7, F-92049 Paris la Defense, France tel: +33 1 42 91 55 55

Apogee Software Inc., 1901 S.Bascom Ave., Suite 325, Campbell, CA 95008-2207, USA tel: (408) 369-9001, fax: (408) 369-9018, info@apogee.com

Applied Parallel Research, Inc., 550 Main St., Placerville, CA 95667 tel: (916) 621-1600, fax: (916) 621-0593, support@apri.com http://ftp.netcom.com/pub/forge/home.html

CETech, Inc., 8196 SW Hall Blvd., Ste. 304, Beaverton, Oregon 97008, USA. tel: (503) 644-6106, fax: (503) 643-8425, cetech@teleport.com

Cray Research,Inc., 655 Lone Oak Drive, Eagan, MN 55121 http://www.cray.com/

CTS, Prinz-Otto Str. 7c, D-85521 Ottobrunn, Germany tel: +49 89 6083758, fax: +49 89 6083758

DEC and Digital Equipment's DEC Fortran 90 home page http://www.digital.com/info/hpc/f90, f90@digital.com

EPC, 17 Alva St, Edinburgh, EH2 4PH, United Kingdom tel: +44-31-225-6262, fax: +44-31-225-6644, support@epc.ed.ac.uk
EPC, 20 Victor Square, Scotts Valley, California 95066 tel: (408) 438-1851, fax: (408) 438-3510, info@epc.com

Fortran Journal, P.O. Box 4201, Fullerton, CA 92634, USA fax: (714) 441-2022

Fujitsu Open Systems Solutions, Inc., 3055 Orchard Drive, San Jose, CA 95134 USA tel: (408) 456-7809, fax: (408) 456-7050, info@ossi.com

Garnatz et Grovender Inc., 5301 26th Avenue South, Mineapolis MN 55417-1923 USA tel: (612) 722-3094, gginc@winternet.com

HP

IBM

ICHOR, 27 rue Linne, F-75005 Paris, France tel: +33 1 43 37 02 02

IDRIS, B.P. 167, F-91403 Orsay Cedex, France

Imagine1, 2 San Rafael Avenue NE, Suite C, Albuquerque, NM 87112, USA fax: (505) 797-3251, tel: (505) 797-8787, info@imagine1.com

ISO, 1 rue de Varembe, Case postale 56, CH-1211 Geneve 20, Switzerland fax: +41 22 734 10 79

Interactive Software Services Ltd., 25 St Michaels Close, Penkridge, Stafford ST19 5AD, UK tel: +44 1785 715588, fax: +44 1785 714913, support@issltd.demon.co.uk

IT Independent Training Limited, 113 Liscombe, Birch Hill, Bracknell, Berkshire, RG12 7DE, UK tel: +44 344 860172, fax: +44 344 867992

KAI (Kuck & Associates), Champaign, IL USA tel: (217) 356-2288, fax: (217) 356-5199, katy@kai.com

Lahey Computer Systems, Inc., 865 Tahoe Blvd., P.O. Box 6091, Incline Village, NV 89450, USA tel: (702) 831-2500, fax: (702) 831-8123, sales@lahey.com

Microsoft

Microway, Research Park, Box 79, Kingston, MA 02364, USA tel: (508) 746-7341, fax: (508) 746-4678, nina@microway.com

NA Software Ltd, Roscoe House, 62 Roscoe St., Liverpool L1 9DW, UK tel: +44 51 7094738, fax: +44 51 7095645, f90doc@nasoftwr.demon.co.uk

NAG Ltd., Wilkinson House, Jordan Hill Road, Oxford, OX2 8DR, UK tel: +44 1865 311744, fax: +44 1865 311755, infodesk@nag.co.uk

NAG Inc., 1400 Opus Place, Suite 200, Downers Grove, IL 60515-5702, USA tel: (708) 971-2345, fax: (708) 971-2346, infodesk@nag.com
NAG GmbH., Schleissheimerstr. 5, D-85748 Garching, Germany tel: +49 89 3207395, fax: +49 89 3207396

NAG Office, Espace III, 62 Boulevard Frederic Arnaud, 09200 Saint Girons (Toulouse, France)

NAG Users Association, PO Box 426, Oxford, OX2 8SD, UK tel: +44 1865 311102, fax: +44 1865 310139, nagua@nag.co.uk

Pacific-Sierra Research Corp., 2901 28th Street, Santa Monica, CA 90405 tel: (310) 314-2300, fax: (310) 314-2323, info@psrv.com

ParaSoft Corporation, 2500 E. Foothill Blvd, Pasadena, CA 91107, USA tel: (818) 792-9941, f90-info@parasoft.com

PGI, The Portland Group, 9150 S.W Pioneer Ct., Suite H Wilsonville, OR 97070 ,USA tel: (503) 682-2806, fax: (503) 682-2637 sales@pgroup.com

Quetzal Computational Associates, 3455 Main Avenue, Suite 4, Durango, CO 81301, USA tel: (970) 382-8979, fax: (970) 382-8981, quetzal@aip.org

Salford Software, Adelphi House, Adelphi Street, Salford M3 6EN, UK tel: +44 161 8342148, fax: +44 161 8342454, sales@salfsoft.demon.co.uk

S.I. editions, 9 av. Prince Hereditaire Albert, MC-98000, Monaco tel: +33 92 05 35 51, fax: +33 92 05 35 04

Simulog, 1 rue James Joule, F-78286 Guyancourt Cedex, France (Mr. E. Plestan) tel: +33 1 30 12 27 00, fax: +33 1 30 12 27 27, plestan@simulog.fr

Spackman & Hendrickson, Inc., 13708 Krestwood Drive, Burnsville, MN 55337, USA tel: (612) 892-5847, fax: (612) 892-5844

Sun Micro Systems

Unicom Seminars Ltd., Brunel Science Park, Cleveland Road, Uxbridge, Middlesex, UB8 3PH, UK tel: +44 895 256484, fax: +44 895 813095, unicom@unicom.demon.co.uk

Unicomp, Inc., 1874 San Bernardino Ave NE, Albuquerque, NM 87122, USA tel: (505) 275-0800, fax: (505) 856-1501, walt@fortran.com

Visual Numerics, mktg@houston.vni.com

I am always pleased to receive informations. Thanks to all those who sent some to me, and that I can not cite all because I lost some of their names and addresses :-)
Michel

Michel OLAGNON            | email : Michel.Olagnon@ifremer.fr
IFREMER: Institut Francais de Recherches pour l'Exploitation de la Mer
Département Génie Océanique
Cellule Océano-Météo
Centre de Brest - B.P. 70 | phone : +33 2 98 22 41 44                 |
F-29280 PLOUZANE - FRANCE | fax   : +33 2 98 22 41 35                 |
WWW: http://www.ifremer.fr/ditigo/molagnon/molagnon.html              |