High Performance Fortran (HPF) is an extension of Fortran 90 with constructs that support parallel computing, published by the High Performance Fortran Forum (HPFF). The HPFF was convened and chaired by Ken Kennedy of Rice University. The first version of the HPF Report was published in 1993.
Building on the array syntax introduced in Fortran 90, HPF uses a data parallel model of computation to support spreading the work of a single array computation over multiple processors. This allows efficient implementation on both SIMD and MIMD style architectures. HPF features included:
- New Fortran statements, such as
FORALL
, and the ability to createPURE
(side effect free) procedures - Compiler directives for recommended distributions of array data
- Extrinsic procedure interface for interfacing to non-HPF parallel procedures such as those using message passing
- Additional library routines - including environmental inquiry, parallel prefix/suffix (e.g., 'scan'), data scattering, and sorting operations
Fortran 95 incorporated several HPF capabilities. In response, the HPFF again convened and published the HPF 2.0 Report. The updated report removed material which was already covered by Fortran 95. The report was also reorganized and revised based on experience with HPF 1.0.
While some vendors did incorporate HPF into their compilers in the 1990s, some aspects proved difficult to implement and of questionable use. Since then, most vendors and users have moved to OpenMP-based parallel processing. However HPF continues to have influence. For example the proposed BIT
data type for the upcoming Fortran-2008 standard contains a number of new intrinsic functions taken directly from HPF.
Famous quotes containing the words high and/or performance:
“Let the saints be joyful in glory: let them sing aloud upon their beds. Let the high praises of God be in their mouth, and a two-edged sword in their hand; to execute vengeance upon the heathen, and punishments upon the people; to bind their kings with chains and their nobles with fetters of iron; to execute upon them the judgment written.”
—Bible: Hebrew Psalms 149:5-9.
“There are people who think that wrestling is an ignoble sport. Wrestling is not sport, it is a spectacle, and it is no more ignoble to attend a wrestled performance of suffering than a performance of the sorrows of Arnolphe or Andromaque.”
—Roland Barthes (19151980)