Skip to main content
QUICK REVIEW

[论文解读] Designing a Micro-Benchmark Suite to Evaluate gRPC for TensorFlow: Early Experiences

Rajarshi Biswas, Xiaoyi Lu|arXiv (Cornell University)|Apr 3, 2018
Advanced Neural Network Applications参考文献 14被引用 7
一句话总结

本文提出了 TF-gRPC-Bench,一个微基准测试套件,旨在通过模拟真实世界的通信模式,评估 gRPC 在 TensorFlow 工作负载中的性能。该套件包含三个基于主流深度学习模型性能分析得出的针对性基准测试。在以太网、IPoIB 和 RDMA 网络环境下的评估显示,性能差异显著,尤其是在低延迟、高吞吐量条件下,凸显了 gRPC 对网络栈选择的敏感性。

ABSTRACT

Remote procedure call (RPC) is the backbone of many modern distributed systems. Google's gRPC is one of the most popular open source RPC frameworks available in the community. gRPC is the main communication engine for Google's Deep Learning framework TensorFlow. TensorFlow primarily uses gRPC for communicating tensors and administrative tasks among different processes. Tensor updates during the training phase are communication intensive and thus TensorFlow's performance is heavily dependent on the underlying network and the efficacy of the communication engine. Training deep learning models on TensorFlow can take significant time ranging from several minutes to several hours, even several days. Thus system researchers need to devote a lot of time to understand the impact of communication on the overall performance. Clearly, there is lack of benchmarks available for system researchers. Therefore, we propose TF-gRPC-Bench micro-benchmark suite that enables system researchers to quickly understand the impact of the underlying network and communication runtime on deep learning workloads. To achieve this, we first analyze the characteristics of TensorFlow workload over gRPC by training popular deep learning models. Then, we propose three micro-benchmarks that take account these workload characteristics. In addition, we comprehensively evaluate gRPC with TF-gRPC-Bench micro-benchmark suite on different clusters over Ethernet, IPoIB, and RDMA, and present the results.

研究动机与目标

  • 为解决缺乏专门用于评估 gRPC 在 TensorFlow 分布式深度学习工作负载中影响的基准测试的问题。
  • 识别并建模 TensorFlow 训练工作负载通过 gRPC 通信的关键特征。
  • 设计一组针对性的微基准测试,以隔离并重现 TensorFlow 中具有代表性的通信模式。
  • 使用所提出的基准测试套件,在不同网络技术(以太网、IPoIB、RDMA)上评估 gRPC 性能。
  • 为系统研究人员提供一个可复现、高效的工具,用于研究分布式机器学习系统中通信栈的性能。

提出的方法

  • 作者首先对 TensorFlow 中主流深度学习模型(如 ResNet、Inception)的训练工作负载进行性能分析,提取了诸如消息大小、频率和数据类型等通信特征。
  • 基于这些特征,他们设计了三个微基准测试:一个用于小而频繁的消息(如梯度),一个用于大而稀疏的消息(如模型权重),以及一个用于混合工作负载,以反映实际训练阶段的通信行为。
  • 这些基准测试通过 TensorFlow 内部的 RPC 机制模拟 gRPC 通信模式,重点聚焦于张量序列化和传输开销。
  • 该套件在多个集群上使用三种网络类型(标准以太网、IPoIB(InfiniBand)和 RDMA)进行了评估,通过受控配置以隔离性能差异。
  • 性能指标包括端到端延迟、吞吐量以及在不同消息大小和网络条件下的可扩展性。
  • 评估使用了标准化、可重复的配置,以确保在不同网络和硬件平台上的可复现性和公平性。

实验结果

研究问题

  • RQ1不同网络技术(以太网、IPoIB、RDMA)如何影响 TensorFlow 通信工作负载中 gRPC 的性能?
  • RQ2在 TensorFlow 训练工作负载中,哪些是主导通信模式,且对 gRPC 性能有显著影响?
  • RQ3微基准测试套件能否准确反映真实深度学习训练工作负载在 gRPC 上的性能特征?
  • RQ4在分布式 TensorFlow 训练中,gRPC 性能如何随消息大小和频率变化?
  • RQ5网络栈的选择在多大程度上影响基于 gRPC 的分布式机器学习系统中的端到端训练延迟?

主要发现

  • gRPC 性能在不同网络类型之间存在显著差异,其中 RDMA 在小消息场景下表现出最低延迟和最高吞吐量。
  • IPoIB 在低延迟场景下表现优于标准以太网,主要得益于更低的内核开销和更优的中断处理机制。
  • 微基准测试成功捕捉了真实 TensorFlow 训练工作负载的性能瓶颈,尤其是在梯度同步阶段。
  • 小消息通信(如梯度)对网络栈选择最为敏感,与以太网相比,RDMA 可将延迟降低高达 50%。
  • 所有网络中,吞吐量均随消息大小良好扩展,但 RDMA 在所有消息大小下均保持更优性能,尤其在高频、低延迟场景下表现突出。
  • 该基准测试套件实现了稳定且可重复的性能测量,适用于分布式机器学习系统中通信栈的系统级评估。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。