paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Phoenix

Phoenix:面向分布式图分析的容错通信与同步基础
ASPLOS Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems2019匹配度 1/10 · 该论文研究分布式图分析系统的容错恢复协议,核心是避免检查点并保证正确结果,属于分布式系统与图计算领域。它与用户关注的 PL 与 AI 交叉、静态分析、浮点程序分析、贝叶斯程序分析及 LLM/Agent 均无直接关联。引用 10 inbox
Roshan Dathathri, Gurbinder Gill, Loc Hoang, Keshav Pingali
crossref: 2026-09-12

AI 速览

一句话:提出 Phoenix 容错协议,使分布式图分析无需检查点即可恢复并保证正确结果,且无故障时无额外开销。

Phoenix 解决分布式内存图分析应用的 fail-stop 故障恢复问题。传统检查点方法需将整个计算回滚到故障前状态,可能带来开销或只能得到近似结果。Phoenix 的核心洞察是无需完整回滚,只需把状态调整到最终能产生正确结果的状态;它用薄 API 让程序员指定必要调整,并实现为通信与同步基础。无故障执行时它无可观测开销,且能容忍任意数量故障并保证结果正确。作者将其集成到 D-Galois,在两个生产集群评估:无故障时比 GraphX 快约 24 倍;相比 D-Galois 的检查点重启,Phoenix 无故障无额外开销而检查点有 31% 开销,发生故障时通常也更优,尤其少量主机同时故障时。

问题
分布式内存图分析应用在 fail-stop 故障下如何高效恢复,同时保证最终结果正确。
方法
提出 Phoenix 通信与同步基础,实现一种无需完整回滚的恢复协议,并通过薄 API 让程序员指定必要的状态调整。
评估
将 Phoenix 集成到 D-Galois,在两个生产集群上与 GraphX 和检查点重启对比,考察无故障开销、容错能力和故障时性能。
原文摘要(Abstract)

This paper presents Phoenix, a communication and synchronization substrate that implements a novel protocol for recovering from fail-stop faults when executing graph analytics applications on distributed-memory machines. The standard recovery technique in this space is checkpointing, which rolls back the state of the entire computation to a state that existed before the fault occurred. The insight behind Phoenix is that this is not necessary since it is sufficient to continue the computation from a state that will ultimately produce the correct result. We show that for graph analytics applications, the necessary state adjustment can be specified easily by the programmer using a thin API supported by Phoenix. Phoenix has no observable overhead during fault-free execution, and it is resilient to any number of faults while guaranteeing that the correct answer will be produced at the end of the computation. This is in contrast to other systems in this space which may either have overheads even during fault-free execution or produce only approximate answers when faults occur during execution. We incorporated Phoenix into D-Galois, the state-of-the-art distributed graph analytics system, and evaluated it on two production clusters. Our evaluation shows that in the absence of faults, Phoenix is ~24x faster than GraphX, which provides fault tolerance using the Spark system. Phoenix also outperforms the traditional checkpoint-restart technique implemented in D-Galois: in fault-free execution, Phoenix has no observable overhead, while the checkpointing technique has 31% overhead. Furthermore, Phoenix mostly outperforms checkpointing when faults occur, particularly in the common case when only a small number of hosts fail simultaneously.

链接与引用

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

BibTeX
@inproceedings{paperbot4922,
  title = {Phoenix},
  author = {Roshan Dathathri and Gurbinder Gill and Loc Hoang and Keshav Pingali},
  booktitle = {ASPLOS},
  year = {2019},
  doi = {10.1145/3297858.3304056}
}