Navigation

Dipl.-Inf. Thorsten Blaß

Department Informatik (INF)
Lehrstuhl für Informatik 2 (Programmiersysteme)

Sprechstunde

N.V.

  • Parallele Code-Analyse auf einer GPU

    (Projekt aus Eigenmitteln)

    Laufzeit: seit 01.07.2013
    URL: https://www2.cs.fau.de/research/ParCAn/

    Im Übersetzerbau (und auch an anderen Stellen) gibt es Analyseverfahren, bei denen Informationen solange durch einen Graphen propagiert und dabei verändert werden, bis sich das Analyseergebnis als Fixpunkt einstellt. In diesem Projekt entwickeln wir den Programmrahmen ParCAn, in dem verschiedene derartige Verfahren parallel und dadurch schneller auf der Graphikkarte ablaufen können.

    Im Jahr 2019 wurde ParCAn an das veränderte Ausführungsmodell neuer NVIDIA GPU-Architekturen angepasst. Mit Einführung der Volta-Architektur können Aktivitäten unabhängig Fortschritt erzielen. Jede Aktivität besitzt seinen eigenen Befehlszähler und Aufrufstapel. Vorher teilten sich Gruppen von Aktivitäten (Warps), den gleichen Befehlszähler und Aufrufstapel. Aktivitäten in einem Warp führten entweder die selbe Anweisung aus oder waren inaktiv (engl.: lock-step execution).

    Anwendungen, die nicht an diese Änderung angepasst sind, sondern sich auf das alte Ausführungsmodell stützen, führen zu fehlerhaften Verhalten. Da Aktivitäten unabhängig voneinander Fortschritt erzielen können, besteht jetzt die Gefahr von Nebenläufigkeitsfehlern innerhalb von Warps. Das vorherige Ausführungsmodell hat dies implizit verhindert. 

    Der Programmcode von ParCAn wurde nach Programmstellen durchsucht, die durch das geänderte Ausführungsmodell zu Nebenläufigkeitsfehlern führen könnten. Die Anwendung wurde entsprechend angepasst. Somit lässt sich ParCAn auch auf den neusten NVIDIA Architekturen korrekt ausführen.

2019

2011

2010

2009

Alphabetisch sortiert im UnivIS