© Copyright 1995
Maui High Performance Computing Center.
High Performance Fortran (HPF) /
Fortran 90 (F90)
Table of Contents
- History
- Background for HPF
- Why Fortran / HPF?
- What is HPF
- HPF
Subset
- Steps for porting to HPF
- Automatic parallelization tools
- Data distribution
- Distribute
- Align
- Processors
- Template
- Realign and Redistribute
- INDEPENDENT do loops
- Data Parallel Constructs and Attributes
- Array Processing
- Masked array assignments - WHERE
- Non-conformable array assignments - FORALL
- "PURE" Procedures
- Intrinsics
- Extrinsic
- Program control
- Branching Statements
- Blocks and Control Constructs
- IF Construct
- DO Construct
- CASE Construct
- Other Control Statements
- Scope and Association
- Procedure Interface Blocks
- Using Internal Procedures and Module
- References, Acknowledgements, WWW Resources
- Exercises
- FORmula TRANslation Proposed-John Backus, (1954)
- Fortran Delivered (1957)
- Fortran II (1958)
- Added separately compiled subroutines
- First Standard FORTRAN IV (1966)
- FORTRAN 77 (1978)
- IF-THEN-ELSE
- OPEN
- Hollerith data removed
More History of Fortran
- MIL-STD-1753 (1978)
- END DO
- DO WHILE
- INCLUDE
- IMPLICIT NONE
- Octal and Hex Constants
- FORTRAN 8x (Never)
Fortran 90 (1992)
- Nothing taken away
- Free Source Form
- Case
- Improved Do
- Cycle, Exit
- ** Specify Numeric Precision **
- Array Processing
- Pointers
- Data Structures
- User-Defined Types and Operators
HPF History
- Based on work done by:
- Connection Machine Fortran (Thinking Machines)
- Fortran D (Distributed)
- Rice (Kennedy)
- Syracuse (Fox)
- Compass Inc.
- Vienna Fortran - University of Vienna (Chapman, Zima)
- HPF Forum - HPFF
- First meeting Supercomputing 91 in Albuquerque
- Rice (Koelbel)
- First meeting January 1992
- Introduction Supercomputing 92
- Draft specification May 1993