将发表于 2026 年第 53 届国际计算机体系结构研讨会(ISCA)。
Jeonghyun Woo1*, Junsu Kim1*, Aamer Jaleel2, Prashant J. Nair1
1 不列颠哥伦比亚大学 2 NVIDIA * 同等贡献
DRAM 的持续微缩加剧了 RowHammer 漏洞。为此,JEDEC 最近引入了按行激活计数(Per Row Activation Counting, PRAC)及 Alert Back-Off 协议,作为 DDR5 的可选特性。尽管前景广阔,PRAC 需要每行计数器单元,这会带来面积开销,并且在每次激活时更新这些计数器会延长 DRAM 时序参数,从而降低性能。MINT 等概率性缓解措施通过在每个周期性缓解窗口内随机选择并缓解行,提供了一种成本更低的替代方案。MINT 在较高阈值(≥ 1000)下表现良好,但在较低阈值下,它必须提高缓解率以克服非选择问题,即被重度锤击的行可能反复逃脱采样。这种固定速率的提升即使在不存在攻击时也会降低有效内存带宽。
为了克服这一局限,我们提出了 PrISM,一种基于交集(intersection)的概率性缓解方法,它使用采样历史队列(Sampled History Queue, SHQ)将跨越多个窗口的采样行关联起来。PrISM 在每个窗口采样少量激活槽位,将已采样但未缓解的行存储在 SHQ 中,并且当某个采样行在该历史中再次出现时,通过现有的 Alert Back-Off 协议请求一次额外缓解。这使得 PrISM 仅在观察到持续性行活动时才增加缓解,而无需全局提高固定缓解率。在阈值为 500 时,PrISM 的平均性能开销仅为可忽略的 0.2%,而 PRAC 为 14%;它不需要修改 DRAM 阵列,也不需要每行计数器,每个 bank 仅需 625B SRAM——比此前基于安全计数器的 DRAM 内防御方案少一到两个数量级。与 MINT 相比,PrISM 在低阈值下具有更好的可扩展性,在阈值为 250 时将平均性能开销从 10.7% 降至 1.5%,降低了 7.1 倍。
prism/
├── perf_analysis/ # Ramulator2 simulations (Figures 7, 8, 9; Table VI)
├── security_analysis/ # Analytical model + MC validation (Figures 5, 6)
├── LICENSE
└── README.md # This file
每个子目录都包含自己的 README,其中提供了详细的复现说明:
perf_analysis/ — 用于生成性能结果的 Ramulator2 基础设施。支持 SLURM 和单机执行。security_analysis/ — 用于验证安全性声明的纯 Python 解析模型和蒙特卡洛验证。克隆仓库并选择一个子目录:
git clone https://github.com/STAR-Laboratory/prism.git
cd prism
要复现性能结果(图 7、8、9;表 VI):
cd perf_analysis
./run_artifact.sh --method slurm --artifact all # or --method personal
要复现安全性分析(图 5、6):
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
完整细节请参阅各子目录的 README。
@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},
}
本仓库基于 MIT 许可证 发布。