Zur Seitennavigation oder mit Tastenkombination für den accesskey-Taste und Taste 1 
Zum Seiteninhalt oder mit Tastenkombination für den accesskey und Taste 2 
Startseite    Anmelden     
Logout in [min] [minutetext]

Projektseminar "Auto-Tuning von Stencil-Berechnungen auf modernen Many-Core-Systemen" - Einzelansicht

Grunddaten
Veranstaltungsart Projektseminar Langtext
Veranstaltungsnummer 104181 Kurztext
Semester SS 2016 SWS 2
Erwartete Teilnehmer/-innen 8 Studienjahr
Max. Teilnehmer/-innen 8
Credits Belegung Belegpflicht
Hyperlink http://www.uni-muenster.de/PVS/lehre/ss16/projektseminar.html”
Sprache deutsch
Termine Gruppe: [unbenannt] iCalendar Export für Outlook
  Tag Zeit Rhythmus Dauer Raum Raum-
plan
Lehrperson Status Bemerkung fällt aus am Max. Teilnehmer/-innen
Einzeltermine anzeigen
iCalendar Export für Outlook
Di. 10:00 bis 12:00 woch von 19.04.2016           
Gruppe [unbenannt]:
 


Zugeordnete Personen
Zugeordnete Personen Zuständigkeit
Gorlatch, Sergei, Prof. Dr. verantwort
Humernbrum, Tim begleitend
Rasch, Ari begleitend
Studiengänge
Abschluss - Studiengang Sem ECTS Bereich Teilgebiet
Master - Informatik (88 079 14) -
Master - Informatik (88 079 8) -
Bachelor - Informatik (82 079 11) -
Bachelor - Informatik (82 079 7) - 10
Prüfungen / Module
Prüfungsnummer Modul
14001 Projektseminar - Master Informatik Version 2008
13001 Informatik-Projektseminar - Master Informatik Version 2014
17016 Projektseminar - Bachelor Informatik Version 2011
16009 Projektseminar - Bachelor Informatik Version 2007
18016 Projektseminar - Bachelor Informatik Version 2011
Zuordnung zu Einrichtungen
Fachbereich 10 Mathematik und Informatik
Inhalt
Kommentar

Many-Core-Systeme, ausgestattet mit CPUs sowie sog. Beschleunigern wie z.B. Grafikkarten (GPUs) oder Intel Xeon Phi Prozessoren, gewinnen aufgrund ihrer hohen Performance zunehmend an Bedeutung. Die Programmierung solcher Systeme geschieht zurzeit meistens in OpenCL -- einem Standard zur einheitlichen Programmierung heterogener Hardware-Architekturen. Eine grundlegende Schwäche von OpenCL-Anwendungen ist die fehlende Portabilität von Performance: so kann Programmcode mit einer hohen Performance auf CPUs eine schlechte Performance auf GPUs aufweisen und umgekehrt. Zudem kann die Performance zusätzlich für verschiedene Eingabegrößen der jeweiligen Anwendung stark variieren.

 

Auto-Tuning ist ein Ansatz, um automatisiert optimierten Code zu generieren: 1) Anwendungen werden parametrisiert in „Tuning-Parametern“ implementiert; 2) durch eine automatisierte Wahl von Parameterwerten wird die Anwendung für unterschiedliche Hardware und Eingabegrößen optimiert.

 

Im Rahmen dieses Projektseminars soll die Effektivität des Auto-Tuning-Ansatzes für die Generierung von optimiertem OpenCL-Code für Stencil-Berechnungen untersucht werden. Stencil-Berechnungen stellen eine Klasse numerischer Algorithmen dar: i) sie operieren auf multi-dimensionalen Arrays und ii) Array-Elemente werden basierend auf den Werten ihrer Nachbarelemente berechnet. Große Relevanz haben sie beispielsweise in der Bilderverarbeitung und Computersimulation.

 

Die Teilnehmer werden sich zunächst mit der Hardware moderner Prozessoren -- Intel CPUs, NVIDIA GPUs und Intel Xeon Phis -- auseinandersetzen, und sich mit Optimierungen in OpenCL vertraut machen. Dieses Wissen soll anschließend verwendet werden, um eine in Tuning-Parametern parametrisierte OpenCL-Implementierung für Stencil-Berechnungen zu entwickeln. Für die Bestimmung konkreter Parameterwerte soll die Bibliothek OpenTuner verwendet werden, welche derzeit am MIT entwickelt wird. Diese verspricht eine hohe Effektivität für die Bestimmung von Tuning-Parameter-Werten beliebiger Anwendungen. Die im Projekt entwickelte Implementierung soll abschließend im Rahmen einer Evaluation detailliert analysiert und mit verwandten Ansätzen verglichen werden.

 

Die Teilnehmer werden detaillierte Kenntnisse über die Architektur und Programmierung moderner Many-Core-Systeme erlangen und sich ein Bild von der modernen Forschung auf diesem Gebiet machen.

Voraussetzungen

Die Teilnahme an diesem Projektseminar setzt grundlegende Kenntnisse der Programmiersprache C++ voraus. Kenntnisse in der parallelen Programmierung sind von Vorteil.

Leistungsnachweis Vorträge, Implementierung eines Softwaresystems, Ausarbeitung, aktive Teilnahme

Strukturbaum
Keine Einordnung ins Vorlesungsverzeichnis vorhanden. Veranstaltung ist aus dem Semester SS 2016 , Aktuelles Semester: SoSe 2024