Tutorials |
Ian Foster (Argonne Nat. Lab. And Univ. of Chicago)
This tutorial is a practical
introduction to programming for high-performance distributed computing systems,
or “computational grids,” and the capabilities of the Globus grid toolkit.
Emerging high-performance
networks promise to enable a wide range of emerging application concepts such as
remote computing, distributed supercomputing, tele-immersion, smart instruments,
and data mining. However, the development and use of such applications is in
practice very difficult and time consuming, because of the need to deal with
complex and highly heterogeneous systems. The Globus grid programming toolkit is
designed to help application developers and tool builders overcome these
obstacles to the construction of “grid-enabled” scientific and engineering
applications. It does this by providing a set of standard services for
authentication, resource location, resource allocation, configuration,
communication, file access, fault detection, and executable management. These
services can be incorporated into applications and/or programming tools in a
“mix-and-match” fashion to provide access to needed capabilities.
The tutorial covers three
topics. First, we review basic principles of Grid computing and requirements for
Grid architecture, describing the key protocols and services required. Then, we
introduce the capabilities of the Globus toolkit. Finally, we show how Globus
services can be applied in specific applications, examining in particular Data
Grid, remote instrumentation, and distributed computing examples.
For more information on Globus, see http://www.globus.org.
Jack
Dongarra (University of Tennessee and Oak Ridge National Laboratory,
USA)
In this tutorial we will look at some methods for generating automatically fast robust numerical kernels for numerical operations and methods for measuring the performance on today's processors. In addition we will look at a system, called NetSolve that allows users to access computational resources, such as hardware and software, distributed across the network. This project has been motivated by the need for an easy-to-use, efficient mechanism for using computational resources remotely. Ease of use is obtained as a result of different interfaces, some of which do not require any programming effort from the user. Good performance is ensured by a load-balancing policy that enables NetSolve to use the computational resource available as efficiently as possible. NetSolve offers the ability to look for computational resources on a network, choose the best one available, solve a problem (with retry for fault-tolerance) and return the answer to the user.
Tutorial notes (Acrobat ~1Mb))
Tim Mattson (Intel Corp.)
OpenMP has emerged as the standard way to write multi-threaded software on shared memory computers. It may seem strange to talk about OpenMP at a cluster computing and Grid conference, but shared memory API's like OpenMP play an important role in high performance computing. Some distributed memory systems require a hybrid OpenMP/MPI model to take advantage of all the processors on a system. Also, there have been some attempts to extend OpenMP so it runs over a cluster of computers using some type of distributed virtual shared memory. In this tutorial, we introduce OpenMP. We then discuss how it is used in cluster computing with particular focus on how to safely mix OpenMP and MPI in a single program.
Tutorial notes (PowerPoint ~104Kb)
Presented by the Queensland University
of Technology (QUT)
Sponsored by the IEEE
Computer Society
through the IEEE
Task Force on Cluster Computing
| CCGrid2001 Home |
| Call for Papers | Contact
Details | Chairs & Committees | Registration
Details | Key Note Speakers |
| Travel | Tourist Information
| Venue | Accommodation | About
Visiting Australia |
| QUT Home Page | Faculty
of Information Technology | School
of Computing Science |
| Webmaster | Disclaimer
| ©copyright 1999 QUT
|
This page last updated 9 May 2001