Algorithmen und Programmierung neuer Prozessortechnologien: Von Multi-Core zu Hardwarebeschleunigern

Alexander Reinefeld, Thomas Steinke


Kurzbeschreibung
Durch einfache Erhöhung der Schaltfrequenz lassen sich kaum noch weitere Leistungssteigerungen in modernen Rechnersystemen erzielen. Die Systemhersteller setzen daher zunehmend auf den Einsatz von Multi-Core-Prozessoren und Hardware-Beschleunigern. Deren effiziente Programmierung erfordert neben Kenntnissen paralleler Algorithmen ein genaues Verständnis der zugrunde liegenden Hardware-Architektur. Diese Lehrveranstaltung besteht aus zwei Teilen: Im Vorlesungsteil geben die Veranstalter einen Überblick über moderne Prozessortechnologie (Befehlsarchitektur, Adressierung, Pipelining, ILP, Speicherhierarchie, Cohärenz, Multi-Core, FPGA, ClearSpeed) und Parallelisierungsstrategien. Im Projektteil implementieren die Studenten ausgewählte Algorithmen auf Multi-Core-Systemen, FPGAs, Clearspead, GPUs und Cell.

Zeit und Ort
Mittwochs, SE: 14-16 Uhr, PJ: 16-18 Uhr
Die Veranstaltung findet am ZIB im Seminarraum (Raum 2006 im Rundbau) statt.

Termin der Abschlusspräsentation ist der 22.07.08.

Teilnahmevoraussetzung
Kenntnisse in Rechnerarchitektur und im (maschinennahen) Programmieren.
Eine Voranmeldung (Email an steinkezib.de) ist erforderlich.

Schein
Es wird wahlweise ein Seminarschein in Technischer oder Praktischer Informatik vergeben.

Termine und Material
16.04.2008 Folien
  Asanovic et al.: The Landscape of Parallel Computing Research: A View from Berkeley
  Patterson: Latency lags Bandwidth
23.04.2008 Einführung FPGA
  Mitrion-C (Handzettel)
30.04.2008 Einführung CUDA
  >>> CUDA Kurs, Uni of Illinois Urbana Champaign (20 Vorlesungen)
07.05.2008 Einführung ClearSpeed
  Cn-Programmierung