Hauptspeicher ist nach den Recheneinheiten das wichtigste Betriebsmittel in einem Rechnersystem ohne das eine Datenverarbeitung de facto unmöglich wäre. Seit mehreren Jahrzehnten werden verschiedene Arten von RAM (“Random Access Memory”) als Hauptspeicher genutzt. RAM wurde technologisch fortentwickelt und bekam so größere Kapazitäten, niedrigere Zugriffslatenzen und größere Datenraten, doch die prinzipiellen Eigenschaften des Hauptspeichers blieben unverändert. Er ist traditionell homogen und byteweise adressierbar. Speicherinhalte sind flüchtig, d.h. sie gehen mit dem Abschalten verloren. Außerdem ist er passiv, d.h. er kann nicht selbstständig Daten verarbeiten. Mittlerweile sind diese typischen Eigenschaften in der Erwartung der Software-Entwickler fest verankert und manifestieren sich daher in deren Produkten. Derzeit beobachten wir nun eine Welle von Innovationen im Bereich der Speicher, die diese Annahmen zunichtemachen. In diesem Sinne sind sie für die komplette Software-Industrie und Informatik “disruptiv”. Beispiele dafür sind NVRAM (nicht flüchtig und sehr spezielle Performance-Charakteristik) sowie erste Produkte, die “Processing-in-Memory” (PIM) oder “Near Memory Computing” (NMC) gestatten (Hauptspeicher wird aktiv). Hinzu kommen Techniken wie High-Bandwidth Memory (HBM) und extrem schnelle Netzwerke, die “Memory Disaggregation” oder direkte Speicherzugriffe über Rechnergrenzen (RDMA) erlauben. Zusammen genommen versprechen diese Innovationen Systeme mit höherer Verarbeitungsleistung, geringem Energieverbrauch, mehr Verlässlichkeit und Kostenreduktionen. Wie man aber all diese Möglichkeiten für künftige Anwendungs- und Systemsoftware bestmöglich nutzt, ist bisher weitgehend unklar – insbesondere, wenn mehrere Technologien kombiniert genutzt werden.Dieses Projekt soll hier Abhilfe schaffen. In der ersten Phase geht es um eine Methodik zur Erstellung formaler Modelle für die neuartigen Hardwarekomponenten, die Topologie des Gesamtsystems und das Verhalten der Software. Die Modelle sollen flexibel nutzbar sein, z.B. zur Laufzeit oder Übersetzungszeit, und brauchen daher einen konfigurierbaren Abstraktionsgrad. Sie sollten unterschiedliche nicht-funktionale Eigenschaften abdecken und modular aufgebaut sein. Diese Methoden und Werkzeuge sollen alle Phasen des Modelllebenszyklus, d.h. Modellgenerierung, -nutzung, und -fortentwicklung unterstützen. Durch die exemplarische Modellierung der zentralen Hardwareplattform des Schwerpunktprogramms wird die Praxistauglichkeit der Methodik nachgewiesen. Gleichzeitig können die Modelle durch andere Projekte genutzt werden.Die zu erforschenden Modelle sind eine entscheidende Voraussetzung für die Entwicklung von optimierten Betriebsmittelverwaltungsstrategien. Mit ihrer Hilfe sollen Kontrollflüsse und Daten in komplexen Systemen so platziert werden, dass Flaschenhälse und Unterauslastungen vermieden werden. Dies soll zunächst nur punktuell und in der zweiten Phase vertieft untersucht werden.