Abgeschlossene Arbeiten (Auswahl)

Masterarbeiten

Autor: Tilmann Unte

Betreuer: Alexander Stegmeier

Sommersemester 2020

 

Kurzzusammenfassung:

Der RC/MC Prozessor hat die Zielsetzung den hohen Ansprüchen an eingebettete Systeme durch nachrichtenbasierte Parallelität und Echtzeitfähigkeit zu begegnen. Dazu werden sehr viele einfache Prozessorkerne mit dem Paternoster NoC verbunden. Jedem Kern werden anhand von periodischen TDM Schedules Sendeslots für die Kommunikation zur Verfügung gestellt. Dadurch wird es ermöglicht für parallele Programme die WCET zu analysieren.

Doch die Anbindung an das Netzwerk über Sende-- und Empfangspuffer hat bisher hohe Hardwarekosten erzeugt. Weiterhin werden die Kerne mit der Verwaltung der Puffer ausgelastet und die TDM Sendeslots können teilweise nicht optimal genutzt werden. Zur Lösung dieser Probleme wird in dieser Arbeit eine echtzeitfähige DMA Schnittstelle entworfen, die den Router direkt an den lokalen Speicher anschließt und das Senden und Empfangen von Nachrichten automatisiert. Dadurch können die Puffer komplett ersetzt werden und der Prozessorkern wird entlastet. Die DMA Schnittstelle wird auf zwei verschiedene Arten für den Alternate Schedule implementiert. Die beiden Implementierungen werden anhand ihrer Hardwarekosten und den Ergebnissen von Microbenchmarks ausgewertet und miteinander verglichen.

 

Bachelorarbeiten

Autor: Paul Burchard

Betreuer: Christian Piatka

Sommersemester 2020

 

Kurzzusammenfassung:

Zunächst werden verschiedene Verfahren zur Ausführbarkeitsanalyse von periodischen Taskmengen vorgestellt, erklärt und in Form von Algorithmen dargestellt. Weiterhin wird ein Verfahren entwickelt, dass in der Lage ist Taskmengen zu generieren, wobei spezifische Parameter variiert werden können. Neben der Festlegung von unter anderem der gewünschten Prozessorauslastung oder der Anzahl der Tasks, kann insbesondere auch gewählt werden, durch welche Scheduling Policies eine Taskmenge aus- und unausführbar sein soll. Die dafür entwickelten Algorithmen werden veranschaulicht und erklärt.
Im späteren Verlauf der Arbeit wird die durchschnittliche Dauer der Generierung einer Taskmenge unter Verwendung verschiedener Parameter evaluiert. Als längste verzeichnete Durchschnittslaufzeit ergaben sich dabei 225 Millisekunden. Allerdings dauert die Generierung für die meisten evaluierten Parameter weniger als eine Millisekunde im Durchschnitt. Daraus folgt, dass sich für den Anwender im Regelfall kaum eine Verzögerung bemerkbar macht.

 

Autor: Axel Böll

Betreuer: Christian Mellwig

Sommersemester 2020

 

Kurzzusammenfassung:

Die ARoMA Laufzeitumgebung implementiert ein an Apache Spark angelehntes MapReduce Programmiermodell (RAPID) auf C++ Basis. Im Zentrum stehen dabei Datenpartitionen auf denen parallele MapReduce-Operationen angewendet werden. Durch die datenparallele Programmierung kann gezielt Datenlokalität vom Programmierer genutzt werden, um die Ausführung paralleler high-performance Anwendungen auf eingebetteten Systemen zu realisieren. Dynamic Programming und Structured Grid sind dabei zwei Berkeley Dwarfs, also zwei Klassen von parallelen Programmen, welche durch die Algorithmen Pathfinder und ParticleFilter der Rodinia Benchmark Suite repräsentiert werden.

Ziel dieser Bachelorarbeit ist es, die Applikationen Pathfinder und ParticleFilter der Rodinia Benchmark Suite von OpenMP auf das RAPID Programmiermodell zu portieren und deren Laufzeit mit der ARoMA Laufzeitumgebung zu evaluieren. Ein Augenmerk soll dabei auf dem Vorgang der Portierung selbst liegen um allgemeine Portierungsprobleme von Dynamic Programming und Structured Grid Algorithmen aufzudecken und zu untersuchen. Da die Speicherzugriffsmuster der OpenMP Implementierung auf shared-memory Architekturen zugeschnitten ist, müssen Datenabhängingkeiten analysiert werden und die Algorithmen so abgeändert werden, dass eine Aufteilung der Daten auf nicht geteilte Speicherbereiche möglich ist.

 

Projektmodule

Autor: Thomas Kügle

Betreuer: Christian Piatka & Florian Haas

Sommersemester 2020

 

Kurzzusammenfassung:

Die Aufgabe des Projektmoduls bestand in der Implementierung eines Skripts für den gem5-Simulator. Dieses Skript sollte es erlauben unkompliziert eine Simulation eines RISC-V Multicore-Systems im Baremetal-Modus durchzuführen. Des weiteren sollte die Multicore-Funktionalität der RISC-V Implementierung untersucht, sowie deren Korrektheit evaluiert werden. In einem letzten Schritt wurde die Möglichkeit betrachtet den gem5 Cache um einen Transaktionsspeicher zu erweitern.

 

Forschungsmodule

Suche