SCL Cluster Cookbook|
Compilers and Related Tools
The compilers included with the freely available Linux and FreeBSD
operating systems are based on the GNU compilers that are part of the
Free Software Foundation's GNU
project. The GNU C compilers, gcc and g++, are
fairly stable and well-used. The EGCS compilers, which have been
under active development and improvement, were recently merged with
GNU C and released as GNU C version 2.95. GNU C 2.95 includes Java
(gcj) and Fortran (g77) compilers.
The free compilers don't seem to approach the quality or features of commercially-available compilers, though. At Ames Lab we are familiar with the compilers offered by The Portland Group, which offers compilers for Fortran dialects including FORTRAN77, High Performance Fortran, and Fortran90. The Portland Group provides compilers for PCs running Linux as well as supercomputers such as the Cray T3E.
Absoft Corporation offers Fortran compilers for Linux, Windows NT, and Power Macintosh systems.
Various automated parallelization systems exist to help convert serial
programs to parallel programs appropriate for use on a cluster. One
particular parallelization agent, which has been used to parallelize
the MM5 weather model in as little as three weeks by a graduate
student unfamiliar with the code, has been produced by Dr. Kothari of
the Iowa State University Department of Computer Science.
Another parallelization tool is BERT 77 by Paralogic. A free version called BERT 77 LITE is available for Linux clusters.