CPS-615 page -- Fall 1997
Tools and Environments
Course Materials
World Wide Web
Fortran90 and HPF
Message Passing Interface(MPI)
General Resources
World Wide Web
Fortran90 and HPF
- Fortran 90 and Computational
Science, a section of Computational Science Education
Project. (Adobe PDF)
- The Current Status of
Fortran 90 and Fortran 95, John Reid, Jan 16, 1996. (foils)
- High-Performance Fortran for
SPMD programming: An Applications Overview. (html)
EPCC: HPF Course Notes. This is a set of student notes for a
course on HPF by Ewing, Richardson, and Simpson at the
Edinburgh Parallel Computing Center. It contains 11 sections
and one section of exercises. (Edinburgh)
HPF/F90 course slides. This set of slides were put together for a
course entitled Writing Data Parallel Programs with High Performance
Fortran at EPCC. (Edinburgh)
The Fortran Library
(aka FLIB) is repository of fortran code mainly in Fortran90
and 77 to run various scientific and engineering tasks. (Kansas)
Tutorial for Compiling and Running XL Fortran Programs (for the
SP2). This tutorial is for the IBM XL Fortran
(or xlf) on the Cornell Theory Center's SP. (Cornell)
Fortran 90 FAQ, texts, programs, etc. is a large list of
compilers, tests and benchmarks, libraries and utilities, examples and
repositories of resources in Fortran. (France)
Message Passing Interface(MPI)
MPI Quick
Tutorials from Ohio Supercomputer Center. This is a set
of easy and quick tutorials on MPI mainly for beginners. (Ohio)
- Here is a set of student notes for a two-day
MPI course offered at the Edinburgh Parallel Computing Centre. (UK)
more
MPI resources from HPCC at Southampton containing pointers
to other resources and archives with yet more resources on the
subject. (UK)
MPI: The Complete Reference by Dongarra et al. is a complete MPI
book online covering all aspects of MPI. (Netlib)
A list of MPI implementations for
various systems from Ohio Supercomputer Center. This is
quite a valuable list of both commercial as well as publicly available
MPI implementations. Each entry gives the name of the package, author or
owner, current version, MPI functions implemented, availability of the code,
and supported systems. (Ohio)
MPI
Tutorials is a list of tutorials as well as other documents
on learning MPI such as FAQs, lessons learned, MPI-inspired definitions,
and quick overviews from Argonne National Laboratory. (ANL)
- The MPI Chapter
from Foster's textbook at Argonne National Laboratory. (ANL)
Directory of MPI resources at the Engineering Research Center of
Mississippi State. (MsState)
- A list of Tutorials and Lab Exercises are available at
the MPI's page
of Cornell Theory Center. (Cornell)
Applications and Examples Using MPI maintained by David Walker at
ORNL. It contains example programs for the nbody problem as well as
examples for the 2D Laplace equation, etc. (ORNL)
Java for Computational Science and Engineering
- At NPAC, Geoffrey Fox maintains a very useful list for
Java for High Performance Scientific and Engineering
Computing - Simulation and Modelling. There are links to various
discussions as well as papers on the subject. In particular, you'll find
there a link to a collection of papers presented at
the
June 1997 PPoPP Java meeting in Las Vegas. (Syracuse)
- Jon Hardwick of CMU has an excellent page for
Java Optimization Resources. It lists resources for
optimization as well as benchmarking and pointers to yet more
resources. (CMU)
MPI Java Wrapper is a set of Java Wrappers to MPI
implemented using Java 1.0 native class interface. (Syracuse)
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. (Syracuse)
- Jack Dongarra maintains a page on
Linpack Benchmark
for Java. It allows viewers to submit results as well as run
the benchmark. Source code and other related links are also included there at
Netlib. (Netlib)
- For Java tutorials, examples, lectures, questions, etc. take a look at
- Some High Performance Java materials are available at
Indiana.
(Indiana)
- A set of parallel algorithms and animation are available at
Parallel
Algorithm Animation. (CMU)
- An interesting applet for Crack propagation is available
here at
Cornell. Also, there is a nice
N-Body simulation applets at CMU. (Cornell, CMU)
- A matrix math package for Java, called
MatrixCafe' is available at MIT. The idea behind it is to
provide a one-to-one mapping of the functions in MATLAB to corresponding
functions in Java. (MIT)
Visual Numerics offers a number
or products, among them
JWAVE,
which is a set of Netscape IFC components for building visual and numerical
applications written in Java. (VNI.com)
JavaSci - A science
API for Java is a set of Java packages aimed at encapsulating scientific
methods/principles in a natural way possible.
(Imperial, UK)
Scientific and
technical computing software is a set of tools in
Java. Those are Java classes for scientific computing, classes for
Java/C/C++/Fortran interfaces, and classes for distributed
applications. (UCLA)
Lava
Rocks is a set of Java classes designed to
support a wide variety of applications, particularly
console-mode applications.(BYU)
Manifold
is a coordination language for orchestration of the communications
among independent, cooperating processes in a massively
parallel or distributed application. (Holland)
JPython is an
implementation of the object-oriented scripting language
Python, seamlessly
integrated with the Java platform. It features high-level
built-in data types, dynamic typing, packages, classes, and
interactive compilation to Java bytecodes. The integration
includes the ability to call Java methods, create instances
of Java classes, etc. (Python)
- The most widely studied and analyzed algorithms in the field of
Computer Science are the sorting algorithms. Here are few of them
implemented in Java. (Rochester)
- For general resources on Computational Science, take a look at
Computational Science / Parallel Processing materials
here at NPAC. It contains lots of materials on the 3 A's
(Architecture, Algorithms, and Applications). (Syracuse)
- The infospheres group at Caltech maintains a large list of
Java Resources . (Caltech)
- For issues pertaining to Java security , check the
FAQ- Java Security page. (Sun)
- The mother of all Java FAQ lists is available at
this site. (Net.com)