iCSC2008 Towards Reconfigurable High-Performance Computing

Details of all lectures

Basics

   

Monday 3 March

 

10:30 - 11:25

Lecture 1

Basics

Iris Christadler

This lecture will give an overview of the state-of-the-art, developments and research topics in High-Performance Computing.
Important topics:

  • HPC applications

  • HPC platforms

  • HPC users

  • Preparations for the Petascale Area

The motivation of alternative architectures to commodity platforms for HPC users will be addressed. 

Audience
The lecture targets all participants with interest in HPC.

Pre-requisite
No prerequisite is necessary.The Data Analysis Process

Multicore Architectures

   

Monday 3 March

 

11:35 12:30

Lecture 2

Multicore Architectures

Andrzej Nowak

Multicore Architectures

This lecture will explain why multi-core architectures have become so popular and why parallelism is such a good bet for the near future.
Important topics:

  • Scalability and parallelism

  • General multi-core architecture characteristics

  •  Multi-core caveats and trade-offs

In particular, the changes in computing landscape will be discussed, as well as the impact that modern hardware has on software.

Audience - Pre-requisite
Listeners don't need to have advanced knowledge about parallel computing.

Platforms I: Advanced Architectural Features

   

Monday 3 March

 

14:00 - 14:55

Lecture 3

Platforms I: Advanced Architectural Features

Andrzej Nowak

This lecture describes some advanced architectural features of modern and upcoming CPU designs. It also addresses the problems of effective coding, especially for parallel and distributed environments.

Important topics:

  • Hardware extensions

  • Language extensions

  • New and experimental languages and compilers

  • Interesting current and upcoming hardware designs

The highlight of this lecture is the way that software relates to hardware, especially when new computational hardware comes into play.

Audience
 
Lecture 3 targets listeners who need to follow developments in the hardware and compiler domains.

Pre-requisite

It is recommended that the listeners follow Lecture 2 before attending this one, but it is not required.

Platforms II: Special-Purpose Accelerators

   

Monday 3 March

 

15:05 16:00

Lecture 4

Platforms II: Special-Purpose Accelerators

Andrzej Nowak

This lecture aims to familiarize the listeners with special-purpose hardware accelerators and processing units which have become popular in recent times. Important topics:

  • Hardware acceleration concepts and philosophy

  • GPUs and gaming hardware

  • Future directions for hardware accelerators, future scenario
    discussion

This lecture will stress the tradeoffs which users face when reaching for ultra-fast special purpose hardware, such as GPUs. 

Audience
Lecture 4 targets listeners who are interested in hardware acceleration using off-the-shelf hardware.

Pre-requisite
It is advisable to follow Lecture 3 before attending this one.

Multicores at work: The CELL Processor

   

Monday 3 March

 

16:30 - 17:25

Lecture 5

Multicores at work: The CELL Processor

Iris Christadler

This lecture will give a deeper insight into one of the special-purpose accelerators, the CELL processor, that is actively being investigated for HPC. Important topics:

  • (Ab)Using your Playstation

  • Cell Clusters

  • The Roadrunner Project

This lecture will show the basic steps to CELL programming in a simple and easy to follow manner such that no prerequisite is necessary to follow the lecture.

Audience - Pre-requisite

The aim is to show the practical realization of theoretical concepts introduced in lectures 2, 3 and 4.

Platforms III - Programmable Logicr

   

Tuesday 4 March

 

09:00-09:55

Lecture 6

Platforms III - Programmable Logic

Manfred Muecke

This lecture introduces programmable logic from a hardware point of view (with a bias towards their potential use in HPC).
Important topics:

  • Introduction to FPGAs.

  • Hardware Description Languages.

  • Understanding FPGA performance figures.

  • Gap between potential computing performance and programmer
    productivity.

 

Audience - Pre-requisite

The lecture is designed for students with no prior knowledge in programmable logic.

 

It does not build upon any of the preceding lectures. It is however the basis for all further lectures and is highly recommended to all students including ones having prior knowledge in programmable logic.

Reconfigurable HPC I - Introduction

   

Tuesday 4 March

 

10:05-11:00

Lecture 7

Reconfigurable HPC I - Introduction

Iris Christadler

This lecture introduces Reconfigurable High-Performance Computing. The reason behind the limited numbers of Reconfigurable Computing (RC) systems in HPC is discussed. It shows the fields where RC is mostly used and the lessons that can be learned. Important topics:

  • Introduction to RHPC

  • Hybrid supercomputers

  • Areas in which RC is already used

  • Areas in which RC might be beneficial

Participants should have attended Lecture 4, Platforms II - Special Purpose Accelerators, and Lecture 6, Platforms III Programmable Logic, or have equivalent knowledge.

Audience - Pre-requisite

Participants should have attended Lecture 4, Platforms II - Special Purpose Accelerators, and Lecture 6, Platforms III Programmable Logic, or have equivalent knowledge.

Reconfigurable HPC II - HW Design Methodology,
Theory & Tools

   

Tuesday 4 March

 

11:30-12:25

Lecture 8

Reconfigurable HPC II - HW Design Methodology,
Theory & Tools

Manfred Muecke

This lecture will first focus on existing tools for making use of FPGAs as number crunchers and will give examples of existing solutions. It will then discuss limitations and how they could be overcome.
Important topics:

  • Old attempts and current tools

  • About levels of HW abstraction

  • What is higher-level synthesis?

  • Examples from HPC and HEP

Audience
This lecture is intended for students seeking deeper understanding of hardware design description issues in general and when using FPGAs as number crunchers – understanding of programming languages and basic compiler technology will be helpful.

Pre-requisite

This lecture builds upon the preceding lectures "6. Platforms III - Programmable Logic" and "7. Reconfigurable HPC I - Introduction".

While not necessarily being a required prerequisite for lecture 9 and 10, it motivates why going beyond existing tools is important.

Advanced and Emerging Parallel Programming Paradigms

   

Tuesday 4 March

 

14:00-14:55

Lecture 9

Advanced and Emerging Parallel Programming Paradigms

Manfred Muecke 

This lecture will present some parallel programming paradigms and will explain why they map so well on reconfigurable hardware. It will then focus on hardware-independent programming and motivate why this is important and how it can be achieved. Current developments will be discussed.
Important topics:

  • Explicit and implicit parallelism

  • On granularity of parallelism and matching hardware architectures

  • On cross-compiling of HPC applications (prospects and issues)

  • Parallel programming languages in the making

Audience
This lecture is more theoretic than preceding lectures and is thought for students seeking a more general understanding on how a programming paradigm affects implementation and performance of languages and tools for reconfigurable HPC.

Pre-requisite

As this lecture is based on issues and conclusions collected from all preceding lectures, having followed as many as possible is certainly helpful.

The most helpful prerequisites are possibly

  • lecture "6. Platforms III - Programmable Logic" and

  • lecture "8. Reconfigurable HPC II - HW Design Methodology, Theory & Tools"

Summary: Hybrid Platforms, Hybrid Programming?

   

Tuesday 4 March

 

15:00-16:00

Lecture 10

Summary: Hybrid Platforms, Hybrid Programming?

Iris Christadler

This lecture will address future prospects of hybrid platforms. It will specify what is necessary to make Reconfigurable HPC a success.
Important topics:

  • Existing hybrid platforms

  • Existing hybrid programming models

  • Future programming models

  • Necessary tools

Audience and Pre-requisite
 
This lecture is both a summary and an outlook. It addresses participants who attended Lectures 7 and 8 about "Reconfigurable HPC"
and Lecture 9, Advanced and Emerging Parallel Programming Paradigms

Transition between HPC and Data Analysis themes: Using HPC concepts in Data Analysis software

   

Tuesday 4 March

 

15:10-16:25

HPC
Theme closing

Using HPC concepts in data analysis software

Alfio Lazzaro

A short session (15 minutes) to connect to the  data analysis software and techniques lecture

Some possible applications of parallel processing in data analysis code are briefly presented (e.g. how to speed up Maximum Likelihood fits).

Audience and Pre-requisite
Attendees are expected to have
some experience in data analysis.Having followed part of the HPC theme will help