paperbot · PL 论文追踪

全部论文 待读 收藏

P2 PROMPT: A Fast and Extensible Memory Profiling Framework

PROMPT:一个快速且可扩展的内存剖析框架
OOPSLA 8(OOPSLA1)2024匹配度 2/10 · 该论文属于运行时/编译器领域的内存剖析框架,与用户核心方向(静态分析×LLM/Agent、浮点程序分析、贝叶斯程序分析)无直接交集。虽然涉及程序分析与工具工程实现,但既不涉及 LLM/Agent,也不涉及静态分析、浮点或贝叶斯方法。引用 4 inbox
Ziyang Xu, Yebin Chon, Yian Su, Zujun Tan, Sotiris Apostolakis, Simone Campanoni, David I. August
crossref: 2026-09-10

AI 速览

一句话:提出可扩展内存剖析框架 PROMPT,开发者仅需指定事件和核心逻辑即可快速构建高性能内存 profiler。

内存剖析能刻画程序动态内存行为,帮助调试、调优并支持基于推测的自动并行化等编译优化。不同场景需要不同的程序轨迹摘要,而实现实用内存 profiler 往往依赖深厚编译经验与大量优化工作。本文提出 PROMPT,一个用于快速构建内存 profiler 的可扩展框架。开发者只需指定剖析事件并定义核心剖析逻辑,无需处理自定义插桩及复杂剖析组件与优化。作者用 PROMPT 移植了两个先进内存 profiler 并保留全部功能:代码量减少超过 65%,剖析开销分别降低 5.3 倍和 7.1 倍。还为复杂编译器优化客户端构建定制工作流,以 570 行代码满足需求,开销降低超过 90%,鲁棒性优于原 profiler。

问题
内存 profiler 开发需要大量编译器与优化专业知识,且不同使用场景要求不同的轨迹摘要,导致快速、鲁棒的内存 profiler 难以实现。
方法
PROMPT 让开发者仅需指定剖析事件并编写核心剖析逻辑,框架自动处理自定义插桩及复杂的内存剖析组件与优化。
评估
通过移植两个先进内存 profiler(保留全部功能,代码减少逾 65%,开销分别降低 5.3× 和 7.1×),并为编译器优化客户端构建 570 行定制工作流,开销降低逾 90% 且鲁棒性提升。
原文摘要(Abstract)

Memory profiling captures programs’ dynamic memory behavior, assisting programmers in debugging, tuning, and enabling advanced compiler optimizations like speculation-based automatic parallelization. As each use case demands its unique program trace summary, various memory profiler types have been developed. Yet, designing practical memory profilers often requires extensive compiler expertise, adeptness in program optimization, and significant implementation effort. This often results in a void where aspirations for fast and robust profilers remain unfulfilled. To bridge this gap, this paper presents PROMPT, a framework for streamlined development of fast memory profilers. With PROMPT, developers need only specify profiling events and define the core profiling logic, bypassing the complexities of custom instrumentation and intricate memory profiling components and optimizations. Two state-of-the-art memory profilers were ported with PROMPT where all features preserved. By focusing on the core profiling logic, the code was reduced by more than 65% and the profiling overhead was improved by 5.3× and 7.1× respectively. To further underscore PROMPT’s impact, a tailored memory profiling workflow was constructed for a sophisticated compiler optimization client. In 570 lines of code, this redesigned workflow satisfies the client’s memory profiling needs while achieving more than 90% reduction in profiling overhead and improved robustness compared to the original profilers.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@article{paperbot2539,
  title = {PROMPT: A Fast and Extensible Memory Profiling Framework},
  author = {Ziyang Xu and Yebin Chon and Yian Su and Zujun Tan and Sotiris Apostolakis and Simone Campanoni and David I. August},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {8},
  number = {OOPSLA1},
  year = {2024},
  doi = {10.1145/3649827}
}