Detailseite
Heuristiken für Heterogenen Speicher
Antragsteller
Dr. Christian Terboven
Fachliche Zuordnung
Datenmanagement, datenintensive Systeme, Informatik-Methoden in der Wirtschaftsinformatik
Förderung
Förderung seit 2020
Projektkennung
Deutsche Forschungsgemeinschaft (DFG) - Projektnummer 446185093
Hochleistungsrechnen (HPC) ist wesentlich, um die rechnergestützte Wissenschaft voranzubringen. In allen modernen Computersystemen wird die Lücke zwischen Rechen- und Speicherleistung immer größer. Als Folge davon verändert sich die Speicherarchitektur: Auf die Cache-Hierarchie folgen neue Technologien mit neuartigen Speichern. Im HPC existieren bereits Systeme, in denen traditioneller Hauptspeicher mit einem kleinen Speicher mit hoher Bandbreite kombiniert wurde. In Systemen mit Beschleunigern, wie z.B. GPUs, ist die Heterogenität durch verschiedene Speichertypen bereits höher. Derzeit müssen Anwendungen für bestimmte Zielplattformen stark modifiziert werden und herstellerspezifische APIs verwenden, um heterogenen Speicher auszunutzen.Es besteht ein dringender Bedarf, eine portable und herstellerneutrale Sicht auf heterogenen Speicher zu entwickeln, um einen produktiven Einsatz zu ermöglichen. Dies muss in Form einer Hierarchie von Abstraktionen erfolgen, um der Vielfalt der vorhandenen Hardware gerecht zu werden, damit Laufzeit-Heuristiken angewandt werden können. Derzeit ist unklar, wie diese Abstraktionen und Heuristiken aussehen sollen, und es müssen einige grundlegende Fragen beantwortet werden.Die Forschungsergebnisse von H2M werden einen konkreten Entwicklungsplan für parallele Programmiersysteme definieren. Das Projekt wird eine Hierarchie von Programmierabstraktionen entwickeln, um heterogene Speicher auf verschiedenen Detail- und Programmierebenen darzustellen, ergänzt durch eine Reihe von herstellerunabhängigen Eigenschaft, die durch Standards und intelligente Laufzeitsysteme erschlossen werden sollen.Intelligente Laufzeitsysteme können auf der Basis dieser Abstraktionen Strategien anwenden, um Daten zu platzieren. H2M wird Heuristiken entwickeln, um heterogenen Speicher für dynamische, abstrakte Datenstrukturen nutzbar zu machen. Ein Performancemodell wird dabei helfen zu entscheiden, wann Threads zuerst gebunden und Daten später platziert werden sollen und wann Daten zuerst platziert und Threads entsprechend gebunden werden sollen, und um einen geeigneten Speichertyp auf der Grundlage der Anwendungsanforderungen auszuwählen. Darüber hinaus wird H2M Faktoren definieren, ob und wann allokierte Anwendungsdaten von einer Speicherart oder -stelle in eine andere verschoben werden sollen. Beide Entscheidungen werden unter Berücksichtigung des Kompromisses zwischen Leistung und Kapazität getroffen.Darauf basierend wird H2M am Ende des Projekts konkrete Vorschläge als Grundlage für Standardisierungsgremien entwickeln.H2M kombiniert die Expertise des Inria-Teams der Entwicklung von Laufzeitfunktionalität und die Fähigkeit der RWTH-Gruppe, diese für Abstraktionen für die HPC-Programmierung zu nutzen. Das Ergebnis dieser gemeinsamen Arbeit wird ein Verständnis liefern, wie heterogene Speichersysteme programmiert werden können durch eine Hierarchie von Programmierabstraktionen und Heuristiken in intelligenten Laufzeitsystemen.
DFG-Verfahren
Sachbeihilfen
Internationaler Bezug
Frankreich
Partnerorganisation
Agence Nationale de la Recherche / The French National Research Agency
Kooperationspartner
Professor Dr. Brice Goglin