
PrISM: A Scalable Probabilistic RowHammer Mitigation (ISCA 2026). Ramulator2 source code and evaluation scripts.
Erscheint im 53. International Symposium on Computer Architecture (ISCA), 2026.
Jeonghyun Woo1*, Junsu Kim1*, Aamer Jaleel2, Prashant J. Nair1
1 University of British Columbia 2 NVIDIA * Gleicher Beitrag
Die DRAM-Skalierung hat die RowHammer-Sicherheitslücke verschärft. Um dem entgegenzuwirken, hat JEDEC kürzlich das Per Row Activation Counting (PRAC) mit dem Alert Back-Off-Protokoll als optionale DDR5-Funktion eingeführt. PRAC ist vielversprechend, erfordert jedoch Zellen pro Zeilenzähler, die einen Flächenaufwand verursachen, und deren Aktualisierung bei jeder Aktivierung verlängert die DRAM-Timing-Parameter, was die Leistung beeinträchtigt. Probabilistische Abwehrmaßnahmen wie MINT bieten eine kostengünstigere Alternative, indem sie in periodischen Minderungsfenstern zufällig Zeilen auswählen und entschärfen. MINT ist bei höheren Schwellenwerten (≥ 1000) wirksam, muss aber bei niedrigeren Schwellenwerten seine Minderungsrate erhöhen, um das Nichtauswahlproblem zu überwinden, bei dem stark gehämmerten Zeilen wiederholt der Stichprobenentnahme entgehen können. Diese feste Ratenanpassung reduziert die effektive Speicherbandbreite, selbst wenn kein Angriff vorliegt.
Um diese Einschränkung zu überwinden, schlagen wir PrISM vor, eine schnittbasierte probabilistische Minderung, die die abgetasteten Zeilen über Fenster hinweg mithilfe einer Sampled History Queue (SHQ) korreliert. PrISM tastet wenige Aktivierungsschlitze pro Fenster ab, speichert abgetastete, aber nicht entschärfte Zeilen in der SHQ und fordert eine zusätzliche Minderung über das bestehende Alert Back-Off-Protokoll an, wenn eine abgetastete Zeile in dieser Historie wieder auftaucht. Dadurch kann PrISM die Minderung nur dann erhöhen, wenn anhaltende Zeilenaktivität beobachtet wird, ohne die feste Minderungsrate global zu erhöhen. Bei einem Schwellenwert von 500 verursacht PrISM einen vernachlässigbaren durchschnittlichen Verlangsamung von 0,2 % im Vergleich zu 14 % bei PRAC, ohne Änderungen am DRAM-Array oder zeilenspezifische Zähler und mit nur 625 Byte SRAM pro Bank – ein bis zwei Größenordnungen weniger als frühere sichere zählerbasierte In-DRAM-Abwehrmaßnahmen. Im Vergleich zu MINT bietet PrISM eine bessere Skalierbarkeit bei niedrigen Schwellenwerten und reduziert die durchschnittliche Verlangsamung von 10,7 % auf 1,5 % bei einem Schwellenwert von 250, eine Verringerung um den Faktor 7,1.
prism/
├── perf_analysis/ # Ramulator2-Simulationen (Abbildungen 7, 8, 9; Tabelle VI)
├── security_analysis/ # Analytisches Modell + MC-Validierung (Abbildungen 5, 6)
├── LICENSE
└── README.md # Diese Datei
Jedes Unterverzeichnis hat eine eigene README mit detaillierten Reproduktionsanweisungen:
perf_analysis/ — Ramulator2-Infrastruktur für die Leistungsergebnisse. Unterstützt sowohl SLURM als auch Einzelmaschinenausführung.security_analysis/ — Reines Python-Analysemodell und Monte-Carlo-Validierung für die Sicherheitsaussagen.Klonen Sie das Repository und wählen Sie ein Unterverzeichnis:
git clone https://github.com/STAR-Laboratory/prism.git
cd prism
Um die Leistungsergebnisse (Abbildungen 7, 8, 9; Tabelle VI) zu reproduzieren:
cd perf_analysis
./run_artifact.sh --method slurm --artifact all # oder --method personal
Um die Sicherheitsanalyse (Abbildungen 5, 6) zu reproduzieren:
cd security_analysis
python3 prism_circular_security_analysis.py figure8 --w 72 \
--output-dir ./results --mc-windows 1000000 --mc-seeds 5
python3 plot_scripts/plot_figure5.py
Siehe die READMEs in den Unterverzeichnissen für vollständige Details.
@inproceedings{prism_isca2026,
title = {Loaded Dice: Solving the Non-Selection Problem for Scalable Probabilistic RowHammer Defense},
author = {Jeonghyun Woo and Junsu Kim and Aamer Jaleel and Prashant J. Nair},
booktitle = {53rd Annual International Symposium on Computer Architecture (ISCA)},
year = {2026},
series = {ISCA'26},
}
Dieses Repository wird unter der MIT-Lizenz veröffentlicht.