Foilset Search Full Index for Basic foilset

Overview of Fortran 90 and HPF Fall 96

Given by Geoffrey C. Fox, Tom Haupt at Basic Simulation Track for Computational Science CPS615 on Fall Semester 96. Foils prepared 17 Sept 1996

A brief discussion of Fortran90 and Fortran77 and why Fortran90 has advantages and disadvantages
Overview of Key Features of Fortran90
See Metcalf and Reid, Fortran90 Explained, Oxford Scientific Publications
Overview of Key Features of HPF
  • Parallel Constructs
  • Data Mapping
  • Examples
The Future -- HPF2
See Chuck Koelbel from Rice University at
http://renoir.csc.ncsu.edu/MRA/HTML/Workshop2/Koelbel


Table of Contents for Overview of Fortran 90 and HPF Fall 96

There are two types of foils -- html and image which are each available in basic and JavaScript enabled "focused" style
(basic:)(focus style:) Denote Foils where Image Critical
(basic:)(focus style:) Denote Foils where HTML is sufficient

1 CPS615 -- Base Course for the Simulation Track of Computational Science
Fall Semester 1996 --
Introduction to High Performance Fortran and Fortran 90
2 Abstract of HPF and Fortran90 Technology Discussion
3 HPF is an extension of Fortran 90
4 Why is Fortran90 Easier than Fortran77
5 Important Features of Fortran90
6 Introduction to Fortran90 Arrays - I
7 Introduction to Fortran90 Arrays - II
8 Fortran90 Arrays and Memory Allocation
9 More on Fortran90 Arrays and Subroutines
10 Typical Use of Array and Intrinsic Operations
11 Derived Type in Fortran90
12 Examples of POINTER's in Fortran90
13 MODULEs in Fortran90
14 MODULEs INTERFACES and Overloaded Operators in Fortran90
15 Outline of HPF Discussion
16 Information on HPF and HPF Forum (HPFF)
17 Possible Programming Models
18 Data Parallel Programming Model
19 Parallelism in HPF
20 Fortran77 is part of Fortran90
21 HPF Features
22 What gives high performance in HPF
23 Compiler directives used in HPF
24 What does an HPF Compiler do?
25 Syntax of HPF Directives
26 Data Mapping in HPF
27 Staged Data Mapping in HPF
28 Template in HPF
29 Abstract Processors in HPF
30 Example of Template and Processors
31 Align Directive in HPF
32 Examples of Align Directive
33 Changing Rank in Align Directive
34 Replication in Align Directive
35 General Alignments in HPF
36 Formal Definition of Align Directive
37 More obscure Complicated Examples of Align Directive
38 Distribution Directive in HPF
39 Basic Examples of Distribute Directive
40 Two Dimensional Example of Distribute Directive
41 The Two Basic Distributions in HPF
42 The Example of Matrix Inversion
43 Example of Graphics Rendering
44 Example of Distribute Directive with Complex Alignment
45 Dynamic Data Mapping
46 Advanced Mapping Directives -- ReDistribution and ReAlign
47 Advanced Mapping Directives -- Allocatable arrays and pointers
48 Subprograms in HPF
49 Passing Distributed Arrays as Subprogram Arguments in HPF
50 Mapping Options for Dummy (Subroutine) Arguments
51 Inherit Distribution Directive in HPF
52 Summary of Mapping Directives in HPF
53 Fundamental Parallelism Assumption in HPF
54 Parallel statements and Constructs in HPF
55 Parallelism in Fortran 90 array assignments
56 WHERE (masked array assignment) in HPF
57 WHERE...ELSEWHERE / IF...ELSE constructs in HPF
58 Intrinsic functions in HPF
59 HPF library functions
60 SUM, SUM_PREFIX and SUM_SCATTER defined
61 HPF Intrinsic EXAMPLE: SUM
62 FORALL Statement in HPF
63 Examples of FORALL statements in HPF
64 Semantics of the FORALL statement in HPF
65 Vector Indices in FORALL's
66 Multiple Statement FORALL's
67 HPF FORALL construct Pictorially
68 PURE Functions in HPF
69 Example of PURE Function from Chuck Koelbel
70 The INDEPENDENT Assertion in HPF
71 !HPF$ INDEPENDENT FORALL Pictorially
72 !HPF$ INDEPENDENT DO Pictorially
73 !HPF$ INDEPENDENT, NEW Variable
74 Extrinsics in HPF
75 High Performance Fortran HPF2 Changes
76 ON HOME for Computation Placement
77 Reductions in INDEPENDENT DO Loops
78 Spawning Tasks in HPF
79 New Data Mapping Features in HPF 2.0 - I
80 New Data Mapping Features in HPF 2.0 - II

Full WebWisdom URL and this Foilset Search
This contains all WebWisdom links preceded by those referenced in this foilset
© on Tue Oct 7 1997