Metacomputing: The Informal Supercomputer

Geoffrey Fox

NPAC

Metacomputing: The Informal Supercomputer

Lecture 1:

Lecture 1:

Overview (Contd)

Overview (Contd)

A Brief History of Scientific Computing

A Brief History of Scientific Computing

A Brief History of Scientific Computing

Computer Performance (1940 - 1995)

Network Performance (1955 - 2005)

Some Terminology - 1

Some Terminology - 2

Some Terminology - 3

Some Terminology - 4

Some Terminology - 5

The Need For Supercomputing

The Need for Supercomputing - (Cont.)

The Need for Alternative Supercomputing Resources

The Need for Supercomputing - (Cont.)

Parallel Architectures

Parallel Architectures

Single Instruction Multiple Data (SIMD)

Multiple Instruction Multiple Data (MIMD)

Computer Architectures - MIMD - Shared Memory

Computer Architectures - MIMD - Shared Memory

Computer Architectures - Shared Memory

Computer Architectures - Shared Memory

Computer Architectures - MIMD - Distributed Memory

Computer Architectures - MIMD - Distributed Memory

Computer Architectures - MIMD - Distributed Memory

Distributed Memory: Some Approaches

Distributed Memory: Some Approaches

Distributed Memory: Some Approaches

Distributed Memory: Examples

Computer Architectures - MIMD -

The Need for Supercomputing - (Cont.)

The Need for Supercomputing - (Cont.)

Parallel Computing versus Distributed Computing

Parallel Computing versus Distributed Computing

Some Comments about Parallel and Distributed Computing

Communications Performance of Some Parallel and Distributed Systems

The Challenge

Infrastructure and Technology

Features of Distributed Systems - Performance (1)

Features of Distributed Systems - Performance (2)

Features of Distributed Systems - Distributed File Systems

Features of Distributed Systems - Single User Namespace

Features of Distributed Systems - Service Availability

Features of Distributed Systems - Resource Allocation

Features of Distributed Systems - Security

Features of Distributed Systems:

Features of Distributed Systems:

Features of Distributed Systems:

Categories of Application Problems

Categories of Application Problems

Software Issues -

Example of Basic Problem Architectures for MetaProblem Class

Affordable Systems Optimisation Process (ASOP)

Affordable Systems Optimisation Process (ASOP)

Affordable Systems Optimisation Process (ASOP)

Affordable Systems Optimisation Process (ASOP)

What is the "Correct" Machine Architecture for Each Problem Class

Enabling HPCC Software Technologies

Enabling HPCC Technologies

Comparison of Three Different Programming Models

Some Hardware and Software Trends 0ver the next 5 Years

Some Hardware and Software Trends 0ver the next 5 Years

Distributed/Parallel Programming Paradigms

Parallel/Distributed Programming Languages

Legion - Introduction

Legion - Introduction

Legion - Philosophy

Legion - Distributed Objects

Legion - Philosophy

The Legion Testbed at the University of Virginia

The Legion Testbed at the University of Virginia

The Legion Testbed at the University of Virginia

The Legion Testbed at the University of Virginia

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion Tools

Legion - Applications

TreadMarks: Shared Memory Computing on Networks of Workstations

The TreadMarks Interface

The TreadMarks Interface

TreadMarks - Parallel “Hello World”

Programming Experience between PVM and TreadMarks - Generalisations.

Programming Experience between PVM and TreadMarks...

Network Linda

Linda - Overview

Linda - Overview

The Linda Model

Master/Worker Model using Virtual Shared Memory

Master/Worker Model using Virtual Shared Memory

Linda Basics

Linda Basics

Linda Basics

Linda Basics

Linda Basics

Example Code: Features Illustrated in FORTRAN/C Code

Linda - Parallel “Hello World”

High Performance Fortran

High Performance Fortran

HPF Goals

HPF Goals

HPF Language

HPF Language

Message Passing Interface (MPI)

Message Passing Interface (MPI)

MPI Forum

MPI's prime goals are:

MPI - Parallel “Hello World”

Parallel Virtual Machine (PVM)

PVM - What is it?

PVM - What is it?

PVM Features

PVM Features

PVM - History

Advantages/Disadvantages to Using PVM

Advantages/Disadvantages to Using PVM

Advantages/Disadvantages to Using PVM

Advantages/Disadvantages to Using PVM

Advantages/Disadvantages to Using PVM

PVM Components

PVM Daemon (pvmd3)

PVM Daemon (pvmd3)

PVM Libraries

PVM Libraries

JAVA - Overview

JAVA - Overview

History of Java Language and Team

Some Key Java Features

Java Features -- It's Simple and Familiar!

Java Features -- It's Simple and Familiar!

Java Features -- It's Object-oriented

Java Features -- It's Object-oriented

Java Features -- It's Architecture-Neutral

Java Features -- It's Architecture-Neutral

Java Features -- It's Portable

Java Features -- It's Portable

Vava Features -- It's Distributed

Java Features -- It's (Hopefully) Secure

Java Features -- It's (Hopefully) Secure

Java Features -- It's Multithreaded

Java Features -- It's Multithreaded

Java Language -- Program Structure

Java Language -- Program Structure

Hello World Applet from Sun Tutorial

Hello World Applet from Sun Tutorial