paperbot · PL 论文追踪

全部论文 待读 收藏

P2 SPLENDID: Supporting Parallel LLVM-IR Enhanced Natural Decompilation for Interactive Development

SPLENDID:支持并行 LLVM-IR 增强自然反编译以用于交互式开发
ASPLOS Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 32023匹配度 2/10 · 该论文属于编译与代码生成/并行化方向,关注 LLVM-IR 到 C/OpenMP 的反编译与协作式并行化,与用户核心关注的静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析均无直接交集。虽属 PL 领域,但研究问题和方法差异较大。引用 2 inbox
Zujun Tan, Yebin Chon, Michael Kruse, Johannes Doerfert, Ziyang Xu, Brian Homerding, Simone Campanoni, David I. August
crossref: 2026-09-12

AI 速览

一句话:提出 LLVM-IR 到 C/OpenMP 反编译器 SPLENDID,生成可移植并行代码以支持程序员与并行编译器协作。

手动编写并行程序困难且易错,自动并行化又因缺少程序员掌握的信息而收益受限。SPLENDID 将 LLVM-IR 反编译为标准的 C/OpenMP 代码,使程序员能获得编译器已并行化的可移植起点,再进一步并行化或优化,从而实现人机协作,且生成代码兼容任意源语言编译器。以 PolyBench 已发布的手工并行化为参照,该协作式方法所得程序比基于 Polly 的自动并行化或纯手工并行化快一倍;生成代码也比现有反编译器更自然,平均 BLEU 分数高 39 倍。

问题
手动并行编程困难且易错,而纯自动并行化因缺少程序员掌握的程序信息而覆盖率和性能受限。
方法
实现 LLVM-IR 到 C/OpenMP 的反编译器 SPLENDID,输出标准、可移植的并行 OpenMP 代码,作为程序员进一步并行化或优化的协作起点。
评估
以 PolyBench 已有手工并行化版本为参考,比较 SPLENDID 协作式方法、基于 Polly 的自动并行化与纯手工并行化,并用 BLEU 分数衡量生成代码的自然度。
原文摘要(Abstract)

Manually writing parallel programs is difficult and error-prone. Automatic parallelization could address this issue, but profitability can be limited by not having facts known only to the programmer. A parallelizing compiler that collaborates with the programmer can increase the coverage and performance of parallelization while reducing the errors and overhead associated with manual parallelization. Unlike collaboration involving analysis tools that report program properties or make parallelization suggestions to the programmer, decompiler-based collaboration could leverage the strength of existing parallelizing compilers to provide programmers with a natural compiler-parallelized starting point for further parallelization or refinement. Despite this potential, existing decompilers fail to do this because they do not generate portable parallel source code compatible with any compiler of the source language. This paper presents SPLENDID, an LLVM-IR to C/OpenMP decompiler that enables collaborative parallelization by producing standard parallel OpenMP code. Using published manual parallelization of the PolyBench benchmark suite as a reference, SPLENDID's collaborative approach produces programs twice as fast as either Polly-based automatic parallelization or manual parallelization alone. SPLENDID's portable parallel code is also more natural than that from existing decompilers, obtaining a 39x higher average BLEU score.

链接与引用

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

BibTeX
@inproceedings{paperbot10091,
  title = {SPLENDID: Supporting Parallel LLVM-IR Enhanced Natural Decompilation for Interactive Development},
  author = {Zujun Tan and Yebin Chon and Michael Kruse and Johannes Doerfert and Ziyang Xu and Brian Homerding and Simone Campanoni and David I. August},
  booktitle = {ASPLOS},
  year = {2023},
  doi = {10.1145/3582016.3582058}
}