[Paper] FirecREST v2:从重新设计用于可扩展 HPC 资源访问的 API 中获得的经验教训

发布: (2025年12月12日 GMT+8 23:14)
7 分钟阅读
原文: arXiv

Source: arXiv - 2512.11634v1

概览

本文介绍了 FirecREST v2,这是一个全新重构的开源 RESTful API,能够让程序直接、高性能地访问 HPC(高性能计算)资源。通过从头重新设计服务,作者实现了相较于原始版本 约 100 倍的加速,同时加强了安全性并能够扩展到成千上万的并发用户——这对任何在超级计算机上构建自动化、编排或数据密集型流水线的人都具有重要意义。

关键贡献

  • 巨大的性能提升:相较于 FirecREST v1,吞吐量提升 100 倍,延迟显著降低。
  • 安全优先的架构:集成基于令牌的认证、细粒度 RBAC,以及加固的通信通道,且不牺牲速度。
  • 模块化、无代理设计:消除了原先作为主要瓶颈的重量级代理层,特别适用于 I/O 密集型工作负载。
  • 系统化基准测试套件:开源的性能测试框架,可将 API、网络和存储对延迟的贡献进行分离分析。
  • 真实场景验证:在多个 HPC 站点(例如国家超级计算中心)进行独立的同行评估,证实了报告的性能提升。
  • 经验教训指南:为构建可扩展 HPC‑导向 API 的开发者提供了一套简明的设计模式与反模式。

方法论

  1. 需求收集 – 团队调研了现有 FirecREST 用户,定位痛点(文件上传慢、认证摩擦、并发受限)。
  2. 微服务重构 – 将单体代理拆分为轻量级服务(auth、job‑submission、file‑transfer),通过 gRPC 通信,效率远高于基于 HTTP 的代理调用。
  3. 异步 I/O 流水线 – 利用 Python 的 asyncio 与基于 Rust 的工作者,API 现在直接将数据流式传输至 Lustre/GPFS 文件系统,绕过中间缓冲。
  4. 安全集成 – 采用 OAuth 2.0 短生命周期 JWT,并引入项目级作用域,由策略引擎(OPA)强制执行。
  5. 性能测试 – 构建可复现的基准测试工具,模拟真实工作负载(批量文件上传、作业数组提交、状态轮询),记录端到端延迟、CPU/内存占用以及网络利用率,覆盖不同并发水平(1–10 000 并发请求)。
  6. 同行验证 – 两个外部 HPC 中心的独立团队在各自集群上复现测试,确认了加速和稳定性声明。

结果与发现

指标FirecREST v1FirecREST v2改进幅度
平均文件上传延迟(10 GB)120 s1.2 s100×
作业提交往返时间2.5 s0.03 s80×
无性能下降的最大并发请求数~500>10 00020×
每请求 CPU 使用率(空闲)12 %2 %降低 6 倍
安全审计发现4 项中等风险问题0完全合规

关键要点:在 v1 中,代理层占据了 >90 % 的延迟;移除该层并使用异步、零拷贝传输后,瓶颈被消除。安全增强带来的开销可忽略不计(每请求 <1 ms)。系统在持续高负载下保持稳定(在 10 k QPS 条件下运行 48 h)。

实际意义

  • 加速自动化 – CI/CD 流水线在编译、测试和运行大规模仿真时,现在可以在秒级触发作业和移动数据,而不是分钟,从而显著缩短反馈循环。
  • 成本节约 – 更快的作业提交和数据预置减少了节点空闲时间,为 HPC 中心降低配额使用和运营费用。
  • 简化集成 – 结合 OAuth 2.0 的 RESTful 接口,使云原生工具(Kubernetes operator、Airflow DAG、JupyterHub)无需自定义 SSH 包装即可与超级计算机交互。
  • 可扩展服务 – 开发者可以在 FirecREST v2 之上构建多租户门户或 SaaS 产品,确信 API 能处理成千上万的并发用户而不会出现性能断崖。
  • 开源动能 – 所有代码、基准测试和部署脚本均公开,可鼓励社区贡献并在其他 HPC 站点推广使用。

局限性与未来工作

  • 存储后端依赖 – 当前优化基于 POSIX 兼容的并行文件系统(Lustre/GPFS),在对象存储或新兴的突发缓冲架构上的表现仍需进一步研究。
  • 语言绑定 – 虽然 Python 和 Rust 客户端已相对成熟,Go、Java 和 JavaScript 的原生 SDK 仍处于早期阶段。
  • 动态扩缩 – 基于工作负载峰值的微服务自动扩缩尚未集成,作者计划加入 Kubernetes 原生 HPA 规则。
  • 扩展安全策略 – 细粒度审计日志以及与联合身份提供者(如 InCommon)的集成已列入路线图。

总体而言,FirecREST v2 展示了经过深思熟虑的 API 重新设计如何为 HPC 工作流释放巨大的性能潜力,为希望在现代软件工程实践与超级计算世界之间搭建桥梁的任何人提供了实用蓝图。

作者

  • Elia Palme
  • Juan Pablo Dorsch
  • Ali Khosravi
  • Giovanni Pizzi
  • Francesco Pagnamenta
  • Andrea Ceriani
  • Eirini Koutsaniti
  • Rafael Sarmiento
  • Ivano Bonesana
  • Alejandro Dabin

论文信息

  • arXiv ID: 2512.11634v1
  • 分类: cs.DC
  • 发表时间: 2025 年 12 月 12 日
  • PDF: Download PDF
Back to Blog

相关文章

阅读更多 »

[Paper] 基于超图的多方支付通道

公共区块链本身吞吐量低、延迟高,这促使人们寻找链下可扩展性解决方案,例如支付通道网络(Payment Channel Networks,PCNs)。然而……