Programming Super Computers

 

Organisers: Lone Leth Thomsen, Josva Kleist and Bent Thomsen

 

Lecturers: Brian Vinter (DIKU) and Bent Thomsen (CS AAU)

 

Welcome to the homepage of the PhD Course on Programming Super Computers, Aalborg University, May 28th - 30th, 2008.

 

All lectures are in room 0.2.12 in the Cassiopeia Building

Maps and other useful information

 

PC room 0.2.18 has been reserved for the course participants

 

The schedule is as follows:

 

Day 1 Lectures by: Brian Vinter

Day 2 Lectures by Brian Vinter

Day 3 Lectures by Bent Thomsen

9.00-9.45 Shared Memory Architectures and SMP programming

 

9.00-9.45 MPP Architectures and MPI Programming

 

9.00-9.45 Future of (Super) Computer Programming 1

 

9.45-10.00 Break

9.45-10.00 Break

9.45-10.00 Break

10.00-10.45 Shared Memory Architectures and SMP programming

 

10.00-10.45 MPP Architectures and MPI Programming

 

10.00-10.45 Future of (super) Computer Programming 2

 

10.45-11.00 Break

10.45-11.00 Break

10.45-11.00 Break

11.00-12.00 Introduction to Fyrkat by Josva Kleist

11.00-12.00 Exercises/Reading

11.00-12.00 Future of (Super) Computer Programming 3

12.00-13.00 Break

12.00-13.00 Break

12.00-13.00 Break

13.00-13.45 NOW architectures and PVM Programming

 

13.00-13.45 Remote Memory and Programming with Tuple-spaces and Global Arrays

 

 

13.45-14.00 Break

13.45-14.00 Break

 

14.00-15.00 Exercises/Reading

14.00-15.00 Exercises/Reading

 

 

Literature/Web References

 

Link to Brian Vinter’s slides on Cluster Computing

 

Day 1 Morning:

Shared Memory Architectures and SMP programming

Andrew D. Birrell, An Introduction to Programming with Threads, SRC Research Report 35.

Simultaneous Multithreading Project Academic project with much information and no 'sales' material.

SUN Ultrasparc T1

The Register Story on Intel SMP on a chip

Getting Started with POSIX Threads

Day 1 Afternoon

NOW architectures and PVM Programming

PVM:Parallel Virtual Machine A Users' Guide and Tutorial for Networked Parallel Computing

Anderson et al. A Case for Networks of Workstations: NOW. IEEE Micro, Feb, 1995

Adam J. Ferrari, JPVM: Network Parallel Computing in Java, ACM 1998 Workshop on Java for High-Performance Network Computing

Day 2 Morning

MPP Architectures and MPI Programming

The TOP500 project was started in 1993 to provide a reliable basis for tracking and detecting trends in high-performance computing. Twice a year, a list of the sites operating the 500 most powerful computer systems is assembled and released. The best performance on the Linpack benchmark is used as performance measure for ranking the computer systems. The list contains a variety of information including the system specifications and its major application areas.

Appendix G Vector processor from John L. Hennessy and David A. Patterson: "ComputerArchitecture - A Quantitative Approach", third edition, Morgan Kaufmann, 2003.

The Earth Simulator is built from 640 units of high performance nodes which employ eight vector processors and 16 Gbytes of high speed memory, interconnected via a high speed crossbar network.

IBM Blue Gene is described in IBM Journal of Research and Development Volume 49, Number 2/3, 2005. The article "Overview of the Blue Gene/L system architecture" can be recommended.

MPI home page The Message Passing Interface (MPI) standard, contains lots of useful material.

MPI: A Message-Passing Interface Standard. The reference manual for MPI. Don't print!

Writing Message Passing Parallel Programs with MPI. Course notes for a two day course on MPI usage, N. MacDonald, E. Minty, J. Malard, T. Harding, S. Brown, M. Antonioletti, Edinburgh Parallel Computing Centre.

Day 2 Afternoon

Remote Memory and Programming with Tuple-spaces and Global Arrays

Brian Vinter. Chapter 2 and 3 of: PastSet - A Structured Distributed Shared Memory System. Dr. Scient, Thesis,Tromsø University, 1999, pp . 25-62.

IBM TSpaces Programmer's Guides.

 

Day 3 Morning

Future of (Super) Computer Programming

 

Link to Bent Thomsen’s slides on Super Computer Languages

 

Parallel Programmability and the Chapel Language

 

X10:An Object-Oriented Approach to Non-Uniform Cluster Computing

 

Project Fortress

 

Scala Tutorial

 

A Preview of What's New in C# 3.0

 

Introduction to F#

 

 

Additional links and resources

 

DARPA HPCS - HIGH PRODUCTIVITY COMPUTER SYSTEMS

 

IBM Research | IBM Research | The X10 Programming Language

The X10 Programming Language

 

Chapel Programming Language Homepage

 

Project Fortress Community

 

Overview of C# 3.0

 

http://research.microsoft.com/fsharp

Don Syme's WebLog on F# and Other Research Projects : A Taste of F# Interactive in Visual Studio

 

The Scala Programming Language

 

Fyrkat Wiki

 

Fortress is installed on Fyrkat, but due to some configuration problems you have to installed it in your local directly.

You can run the script ~kleist/bin/installFortress.sh which will do the job.

 

Scala is installed on Fyrkat in /pack/scala - remember to include java (/pack/jdk) in your PATH and set JAVA_HOME=/pack/jdk