paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Let It Flow: A Formally Verified Compilation Framework for Asynchronous Dataflow

Let It Flow:异步数据流的形式化验证编译框架
PLDI 10(PLDI)2026匹配度 3/10 · 论文属于形式化验证与编译器/类型系统方向,虽与“形式化验证”相关,但未涉及 LLM/Agent 与静态分析的交叉,也不是浮点或贝叶斯程序分析,与用户核心研究画像距离较远。引用 1 inbox
Zhengyao Lin, Yi Cai, Milijana Surbatovich
crossref: 2026-09-10

AI 速览

一句话:首个对异步数据流编译器进行形式化验证的工作,用能力类型系统与 Lean 机器化证明同时保证确定性与流水线优化。

空间数据流架构通过全分布、动态调度的算子与异步通道通信,兼顾能效与并行性,但编译过程极易出错:既要保持确定性(结果不依赖算子调度),又要启用跨循环迭代的流水线优化。作者提出 Wavelet,首个对异步数据流编译器做形式化验证的工作。其前端采用带 fence 的新型能力类型系统(capability type system),同步冲突的内存访问并支持流水线;随后在 Lean 中形式化并验证两个核心编译 pass,将类型检查后的程序翻译为数据流图,证明前向模拟与确定性等关键性质。形式化过程在语义层面传播前端类型系统的可靠性保证,使模拟与确定性证明保持模块化。评估表明,Wavelet 编译出的数据流图质量与 RipTide、LLVM CIRCT 等未经验证的数据流编译器相当。

问题
编译到空间数据流架构时,既要保持程序的确定性(结果独立于算子执行调度),又要启用跨循环迭代的流水线优化,这一过程复杂且容易出错,已有数据流编译器均未经验证。
方法
提出 Wavelet:前端使用带 fence 的能力类型系统来同步冲突内存访问并支撑流水线,并在 Lean 中形式化两个核心编译 pass(从类型检查后的程序到数据流图),证明前向模拟与确定性,且语义化地传播前端类型系统的可靠性以保证证明模块化。
评估
将 Wavelet 编译出的数据流图与 RipTide、LLVM CIRCT 等未经验证的数据流编译器产物对比,显示其图质量与之相当。
原文摘要(Abstract)

Dataflow architectures have gained renewed interest due to their balance between energy efficiency and performance. In (spatial) dataflow architectures, a program is represented as a set of entirely distributed and dynamically scheduled dataflow operators that communicate through asynchronous channels, which greatly improves data locality and parallelism. However, compiling to dataflow architectures remains an error-prone process, due to the difficulty of maintaining determinacy while enabling pipelining . Determinacy means that the result of a dataflow program is deterministic and independent of the schedule of operator execution, and pipelining is an important optimization in spatial dataflow that enables parallelism across loop iterations. In this work, we present Wavelet, the first effort to formally verify a compiler for asynchronous dataflow. We use a mix of techniques to achieve this goal. Our frontend uses a novel capability type system with fences to synchronize conflicting memory accesses and enable pipelining . We then verify a Lean formalization of two core compiler passes that translate elaborated programs from the type checker to dataflow graphs, proving important properties of forward simulation and determinacy . Notably, our formalization semantically propagates the soundness guarantees of the frontend type system, ensuring modularity between simulation and determinacy proofs. In our evaluation, we show that dataflow graphs compiled by Wavelet have comparable quality to those produced by unverified dataflow compilers from RipTide and LLVM CIRCT.

链接与引用

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

BibTeX
@article{LinCS26,
  title = {Let It Flow: A Formally Verified Compilation Framework for Asynchronous Dataflow},
  author = {Zhengyao Lin and Yi Cai and Milijana Surbatovich},
  journal = {Proceedings of the ACM on Programming Languages},
  volume = {10},
  number = {PLDI},
  year = {2026},
  doi = {10.1145/3808263}
}