Cache-Hierarchie-Simulator für ein Stuttgarter Steuergeräte-Team
Übersicht
Worum es bei diesem Projekt geht.
Du erhältst eine Spezifikation: 2-Stufen-Cache (L1 Instruktion und Daten getrennt, L2 unified), konfigurierbare Größe, Assoziativität (direkt, 2-way, 4-way, 8-way), Ersetzungsstrategie (LRU, FIFO, Random) und Schreibstrategie (Write-Back vs Write-Through). Implementiere den Simulator in C++17, lese Trace-Files im pin-Trace-Format und gib pro Konfiguration Hit-Rate, Miss-Rate und durchschnittliche Speicherzugriffszeit (AMAT) aus. Vergleiche 6 Konfigurationen über 4 Trace-Files. Liefere den Code, eine Testsuite mit GoogleTest, einen 6-seitigen Auswertungsbericht und eine Empfehlung an das Firmware-Team.
Das Briefing
Was Du tust und was Du zeigst.
Welche Cache-Konfiguration liefert auf realen Firmware-Traces die beste Kombination aus Hit-Rate, AMAT und Implementierungs-Kosten?
Earning criteria — what you'll demonstrate
- Set-assoziative Caches und Ersetzungsstrategien praktisch implementieren
- AMAT (Average Memory Access Time) korrekt aus Hit- und Miss-Penalties berechnen
- Trace-Driven Simulation als Bewertungsmethodik anwenden
- Empfehlungen für ein Firmware-Team mit klaren Trade-offs formulieren
Studienpassung
Wo dies in Dein Studium passt.
Schärft dieselben Fähigkeiten, die Dein Studium von Dir erwartet.
Fähigkeiten
Fähigkeiten, die Du unter Beweis stellst.
Jede taucht auf Deinem verifizierten Zertifikat auf.
Karrieren
Berufe, auf die dies Dich vorbereitet.
Echte Berufsbezeichnungen. Echte Skill-Brücken. Wähle die, die Deinem Werdegang am nächsten kommt.
Karrierewege, die das aufbaut
Kanonische RollenSoftware Engineer
Cache-Simulation ist eine der besten Übungen, um Speicherhierarchie-Verständnis zu bekommen — eine Fähigkeit, die in jeder Software-Engineer-Rolle latente Performance-Probleme früher entdeckt.
Dieses Projekt schärft
- cache-design
- cpp
- simulation
Backend Engineer
Backend Engineers in datenintensiven Systemen denken über Cache-Lokalität nach — wer einen Simulator gebaut hat, hat dafür ein quantitatives Gefühl statt nur Intuition.
Dieses Projekt schärft
- cache-design
- benchmarking
- cpp
Noch eine Sache