Datenabhängigkeitsanalyse



Die Bestimmung von Datenabhängigkeiten spielt eine entscheidende Rolle bei der Restrukturierung sequentieller Programme, insbesondere bei ihrer Parallelisierung. Je genauer die bei der Datenabhängigkeitsanalyse erzielten Ergebnisse sind, um so höher ist der Grad einer parallelen Abarbeitung des Programmes.

Für die Datenabhängigkeitsanalyse von Programmen, die ausschließlich auf Schleifen und Reihungsoperanden basieren, sind ausgereifte Techniken bekannt. Zu den praktisch bedeutsamsten Verfahren gehören der Separability-, der GCD-, der Omega-Test, sowie die Fourier-Motzkin-Elimination. Hingegen ist das Gebiet der Erkennung von Datenabhängigkeiten bei Vorhandensein von Zeigervariablen weniger erforscht.

In Programmen mit Zeigern basiert eine Datenabhängigkeitsanalyse im allgemeinen auf den Ergebnissen einer vorher durchgeführten Aliasanalyse. Im Seminar wollen wir aktuelle Verfahren zur Aliasanalyse diskutieren und anschließend miteinander vergleichen. Darüberhinaus werden wir zeigen, wie unter Verwendung dieser Verfahren Datenabhängigkeiten in Programmen mit Zeigern bestimmt werden können.

Zielgruppe: Studierende im Hauptstudium ab 5. Semester