Software Technology
Fortran90 and HPF
-
High Performance Fortran, including a discussion of parallel
implementations and features of HPF. From
Introduction to Computational Science
course at Syracuse.
High Performance Fortran in Practice, by Charles Koelbel
at Rice University is a
tutorial on the High Performance Fortran language.
| tutorial |
programming exercises |
undergraduate |
HPF Tutorial by Tom Haupt at Syracuse, covers the major
concepts of HPF. Examples are taken from benchmarking codes
and illustrate the use of distributions and alignments.
- If you are unfamiliar with Fortran77, you can look things up in NPAC
Glossary of Fortran
programming.
-
The Computational Science
Education Project e-book at ORNL contains material on
Fortran 90.
| text |
undergraduate |
graduate |
-
For people who want understand the concepts and want a brief review, we
have
terse summary guides , at NPAC, Syracuse to
all the Fortran Languages.
| text |
undergraduate |
graduate |
-
Fortran 90 Course Notes from Manchester, UK. This course
presents an overview of Fortran 90 and explains the features
that are new to the language.
-
Fortran90 from Liverpool, UK, containing different sets of
course materials, some in html and some in postscript.
-
Supercomputing Program for Undergraduate Research at the
Cornell Theory Center has a list of tutorials and one of
them is an Introduction to XL Fortran.
Fortran 90 for the Fortran 77 Programmer, by Einarsson and
Shokin in Sweden is a tutorial to ease the transition
from Fortran 77 to Fortran 90.
| tutorial |
programming exercises |
undergraduate |
- A list of
Fortran 90
and High Performance Fortran Courses, are available from
Manchester and North Training and Education Center, UK.
| lectures |
programming exercises |
undergraduate |
High Performance
Fortran, at the Edinburgh Parallel Computing Center (EPCC)
Training and Education Center. Here is a set of student notes for a
course on HPF by Ewing, Richardson, and Simpson at EPCC.
Also, a set of HPF lecture slides by the same authors are
available
here.
Virtual workshop materials as well as tutorials on
High Performance Fortran, are available at the
Cornell Theory Center.
| lectures |
programming exercises |
graduate |
Fortran M, at Syracuse by Ian Foster at Argonne
National Laboratory
| lectures |
exercises |
undergraduate |
-
Materials for a
workshop on HPC
are available from NCSA. Among the materials there is a
set of slides for an HPF minicourse.
Message Passing Interface (MPI)
MPI is a new library specification for message-passing, proposed as a
standard by a broadly based committee of vendors, implementors, and
users. It can be used to write message-passing programs in any language,
but typically is being made available in either C or Fortran77. The
standard was approved in 1994 and many implementations are either
available or are being planned on MIMD parallel machines and workstation
farms of all types.
-
MPI, by Geoffrey Fox at Syracuse as part of
Introduction to Computational Science course.
MPI Tutorial
and Lab Exercises from
Cornell Theory Center.
MPI: It's Easy to Get Started is a sample code containing the
complete communications skeleton for a dynamically load
balanced master/slave application. It is from Ohio
Supercomputing Center.
Introduction to MPI from the University of New Mexico, Maui
Project.
-
An Introduction
to the MPI Standard by Steve Otto at Oregon Graduate Institute, in
postscript.
-
Chapter on MPI from Ian Foster's book at Argonne
National Lab.
-
MPI Collection of Sources
at Oak Ridge National Lab includes a lot of educational material
including tutorials and talks, papers, and example programs.
| tutorials |
examples |
graduate |
-
MPI Collection of Sources
at Argonne National Lab includes information for and about
implementations of MPI on a variety of machines, and many
other web pages about MPI.
-
Example Programs from the
book Using MPI by Gropp, Lusk, and Skjellum at Argonne National
Lab A directory of example programs, including a more
advanced N-body simulation program, and grid-based
programs for solving Poisson's equations by finite
differences.
-
Brief Description of MPI Tutorial from David Walker at Oak Ridge National Lab.
-
Summary of MPI Tutorial from David Walker at Oak Ridge
National Lab.
-
Homework Problems for the Tutorial from David Walker at Oak
Ridge National Lab.
- Nbody Force Calculation Example Program includes
general documentation and the
MPI
program by David Walker at Oak Ridge National
Lab. The MPI directives of the progam are hyperlinked to
their formats and definitions.
-
Laplace SOR Solver Example Program uses Red/Black ordering for
nearest neighbor calculations. Also, the MPI directives of the program
are hyperlinked to their formats and definitions. The program
was written by David Walker at Oak Ridge National Lab.
- Postscript version (April 1995, 72 pages) of
the 90 minute tutorial slides by David Walker at Oak Ridge
National Lab.
- HTML version of a set of
slides for a half day tutorial on MPI by David Walker at Oak
Ridge National Lab.
Supercomputing Program for Undergraduate Research has a list
lecture materials among them Introduction to MPI at the
Cornell Theory Center.
Educational Materials from the Retooling Project first workshop
in 1995. It contains a collection of educational materials
from the CRPC to help HPCC users write parallel
implementations of their applications in MPI. It is located at
NPAC, Syracuse.
| tutorial |
exercises |
undergraduate |
CTC Virtual Workshop Parallel Programming with Message Passing Libraries,
Message Passing Interface Standard at Cornell Theory Center.
| lectures |
programming examples |
undergraduate |
-
MPI Resource List
is a list of various MPI resources on the web from HPCC at
University of Southampton, UK.
| text |
examples |
tutorials |
graduate |
MPI: the Complete Reference, a comprehensive reference on MPI by
Snir, Otto, Hauss-Lederman, Walker and Dongarra at
Netlib.
MPI Tutorials and Talks, a variety of lectures and tutorials at
Oak Ridge National Lab.
| lecture |
tutorial |
undergraduate |
MPI Course,
at Manchester and North Training and Education Center, UK.
| lecture |
exercises |
undergraduate |
MPI, at the Edinburgh
Parallel Computing Center Training and Education Center.
MPI,
presented at Virtual Workshop at the Cornell Theory
Center.
| lectures |
exercises |
graduate |
Parallel Virtual Machine (PVM)
PVM is a new library specification for message-passing, proposed as a
standard by a broadly based committee of vendors, implementors, and
users. It can be used to write message-passing programs in any language,
but typically is being made available in either C or Fortran77. The
standard has been implemented on MIMD parallel machines and workstation
farms of all types.
PVM: Parallel Virtual Machine: A User's Guide and Tutorial for
Networked Parallel Computing,
by Dongarra et al. PVM at Netlib is a library of
parallel message-passing routines similar to
MPI.
| lecture |
tutorial |
undergraduate |
PVM Course,
at Manchester and North Training and Education Center,
UK.
| lectures |
exercises |
undergraduate |
Tutorial: PVM, by the
Joint Institue for Computational Science at the University of
Tennessee at Knoxville.
PVM,
at the Cornell Theory Center.
| lectures |
exercises |
graduate |
Linda
Linda is a machine-independent parallel programming language.
Linda Group, at Yale University explores a variety of research
topics in parallel and distributed computing.
Java
-
Java for
Computational Science and Engineering is the main page for all of
the latest research and development regarding the use of Java in the
fields of Computational Science and Engineering.
HPCC and
Java is the homepage of the use of Java
and high performance Java in the HPCC field.
Both pages are maintained by Geoffrey Fox at NPAC.
Also, here is the main page for
| text |
graduate |
researchers |
-
Java
Resources is a comprehensive list of Java resources
including links to applets, documentation, packages and
templates, search engines, specific platforms, tools,
tutorials as well as Java research in distributed systems,
networking, etc. This list is maintained by the Caltech
Infospheres Project.
| text |
tutorials |
software |
undergraduate |
graduate |
MPI Java Wrapper is a set of Java Wrappers to MPI
implemented using Java 1.0 native class interface. This set is
available at NPAC, Syracuse.
| software tools |
graduate |
researchers |
Using Java and JavaScript in the Virtual Programming
Laboratory (VPL). VPL is a Web-based virtual
programming environment built based on a client-server
architecture. The system can be accessed on any platform
(Unix, PC, or Mac) using a standard Java-enabled browser. It
is available at NPAC, Syracuse.
| programming tools |
undergraduate |
graduate |
Northeast Parallel Architectures Center (NPAC) at Syracuse University.
The content of these pages may be used freely for educational purposes.
Some of the material is under individual copyright. Send comments to
Saleh Elmohamed , saleh@npac.syr.edu. Last updated 6/4/97