High Performance Fortran

High Performance Fortran

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 create PURE (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.Fact|date=March 2007 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.

External links

* [http://hpff.rice.edu HPFF] - Rice University HPF Forum
* http://wotug.org/parallel/standards/hpf
* [http://www.scai.fraunhofer.de/EP-CACHE/adaptor ADAPTOR] - An open-source HPF compilation system


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • High Performance Fortran — est un langage de programmation pour les machines parallèles. Ce langage, est basé sur Fortran 90 avec l’ajout de directives de placement des données (align, distribute), de boucles parallèles (directive independent, construction forall) et… …   Wikipédia en Français

  • Fortran — Basisdaten Paradigmen: prozedural, imperativ, strukturiert, objektorientiert …   Deutsch Wikipedia

  • FORTRAN — Paradigmen: prozedural, imperativ, strukturiert, objektorientiert Erscheinungsjahr: 1957 Entwickler: John W. Backus, IBM …   Deutsch Wikipedia

  • Fortran — Infobox programming language name = Fortran caption = The Fortran Automatic Coding System for the IBM 704 (October 15, 1956), the first Programmer s Reference Manual for Fortran paradigm = multi paradigm: procedural, imperative, structured,… …   Wikipedia

  • Java performance — Programs written in Java have had a reputation for being slower and requiring more memory than those written in natively compiled languages such as C or C++ (see e.g. [cite web url=http://www.jelovic.com/articles/why java is slow.htm title=Why… …   Wikipedia

  • HPF — High Performance Fortran High Performance Fortran est un langage de programmation pour les machines parallèles. Ce langage, est basé sur Fortran 90 avec l’ajout de directives de placement des données (align, distribute), de boucles parallèles… …   Wikipédia en Français

  • HPF — High Performance Fortran (Computing » Software) **** High Pass Filter (Academic & Science » Electronics) *** High Power Field (Medical » Physiology) * HP LaserJet fonts (PageMaker) (Computing » File Extensions) * High Performance Formula… …   Abbreviations dictionary

  • Message Passing Interface — MPI, the Message Passing Interface, is standardized and portable message passing system designed by a group of researchers from academia and industry to function on a wide variety of parallel computers. The standard defines the syntax and… …   Wikipedia

  • Ken Kennedy (computer scientist) — Ken Kennedy (August 12,1945 ndash; February 7,2007) was an American computer scientist and professor at Rice University. He was the founding chairman of Rice s Computer Science Department. [ [http://www.cs.rice.edu/ ken/kennedy vita.pdf… …   Wikipedia

  • Guy L. Steele Jr. — Guy Lewis Steele Jr., (pronEng|ˈstiːl as in steel ), also known as The Great Quux and GLS (pronEng|glis), is an American computer scientist who has played an important role in designing and documenting several computer programming… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”