A Note on Compiling Fortran
- Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
Fortran modules tend to serialize compilation of large Fortran projects, by introducing dependencies among the source files. If file A depends on file B, (A uses a module defined by B), you must finish compiling B before you can begin compiling A. Some Fortran compilers (Intel ifort, GNU gfortran and IBM xlf, at least) offer an option to ‘‘verify syntax’’, with the side effect of also producing any associated Fortran module files. As it happens, this option usually runs much faster than the object code generation and optimization phases. For some projects on some machines, it can be advantageous to compile in two passes: The first pass generates the module files, quickly; the second pass produces the object files, in parallel. We achieve a 3.8× speedup in the case study below.
- Research Organization:
- Lawrence Livermore National Lab. (LLNL), Livermore, CA (United States)
- Sponsoring Organization:
- USDOE
- DOE Contract Number:
- AC52-07NA27344
- OSTI ID:
- 1393322
- Report Number(s):
- LLNL-TR--738243
- Country of Publication:
- United States
- Language:
- English
Similar Records
GNU Fortran Cray Pointer Extension
Using Coarrays to Parallelize Legacy Fortran Applications: Strategy and Case Study
Preliminary experiences with the Fortran D compiler
Software
·
Wed Jul 27 00:00:00 EDT 2005
·
OSTI ID:1230807
Using Coarrays to Parallelize Legacy Fortran Applications: Strategy and Case Study
Journal Article
·
Wed Dec 31 19:00:00 EST 2014
· Scientific Programming
·
OSTI ID:1197693
Preliminary experiences with the Fortran D compiler
Conference
·
Thu Dec 30 23:00:00 EST 1993
·
OSTI ID:46229