The Queen's University of Belfast
Parallel Computer Centre

[Next] [Previous] [Top]

9 Further Development


9.1 Fortran 95

Fortran 95 will be a fairly small update to Fortran 90, consisting mainly of clarifications and corrections to Fortran 90. The next major changes are expected in Fortran 2000.

Fortran 95 will, however, provide some new features including:

FORALL (i=1:n) a(i,i)=i

FORALL (i=1:n,j=1:n,y(i,j)/=0 .AND. i/=j) x(i,j)=1.0/y(i,j)

FORALL (i=1:n)
a(i,i)=i
b(i)=i*i
END

CALL CPU_TIME(t1)

WHERE (mask1)
...
WHERE (mask2)
...
ELSEWHERE
...
ENDWHERE
ELSEWHERE
...
ENDWHERE

REAL, POINTER :: P(:)=>NULL()

TYPE string
CHARACTER, POINTER :: ch(:)=>NULL()
ENDTYPE

9.2 Parallel Computers

It is important, nowadays, that a new programming language standard should permit efficient compilation and execution of code on supercomputers as well as conventional computers. Fortran 90 is said to be efficient on conventional computers and on vector processors, but less efficient on parallel computers. However, the limelight of supercomputing research has recently shifted away from vector computers and towards parallel and "massive" parallel computers. This interest in parallel computers has lead to the development of two de facto standards:

9.2.1 High Performance Fortran

The goal of High Performance Fortran was to provide a set of language extensions to Fortran 90 to support:

Fortran 90 supports data parallel programming through the array operations and intrinsics. HPF extends this support with:

9.2.2 Message Passing Interface

MPI is a proposed standard Message Passing Interface for:

Such a standard is required for several reasons:

MPI contains:


[Next] [Previous] [Top]
All documents are the responsibility of, and copyright, © their authors and do not represent the views of The Parallel Computer Centre, nor of The Queen's University of Belfast.
Maintained by Alan Rea, email A.Rea@qub.ac.uk
Generated with CERN WebMaker