Skip to main content
QUICK REVIEW

[论文解读] A Runtime-Based Computational Performance Predictor for Deep Neural Network Training

Geoffrey X. Yu, Yubo Gao|arXiv (Cornell University)|Jan 31, 2021
Advanced Neural Network Applications参考文献 48被引用 4
一句话总结

本文提出Habitat,一种基于运行时的性能预测器,仅需在参考GPU上进行一次测量,即可实现跨GPU对DNN训练迭代时间的精确预测。通过应用波形缩放和预训练的多层感知机,其在多种模型和GPU架构上实现了平均11.8%的预测误差,使用户在无需访问目标硬件的情况下也能做出成本高效的GPU选型决策。

ABSTRACT

Deep learning researchers and practitioners usually leverage GPUs to help train their deep neural networks (DNNs) faster. However, choosing which GPU to use is challenging both because (i) there are many options, and (ii) users grapple with competing concerns: maximizing compute performance while minimizing costs. In this work, we present a new practical technique to help users make informed and cost-efficient GPU selections: make performance predictions with the help of a GPU that the user already has. Our technique exploits the observation that, because DNN training consists of repetitive compute steps, predicting the execution time of a single iteration is usually enough to characterize the performance of an entire training process. We make predictions by scaling the execution time of each operation in a training iteration from one GPU to another using either (i) wave scaling, a technique based on a GPU's execution model, or (ii) pre-trained multilayer perceptrons. We implement our technique into a Python library called Habitat and find that it makes accurate iteration execution time predictions (with an average error of 11.8%) on ResNet-50, Inception v3, the Transformer, GNMT, and DCGAN across six different GPU architectures. Habitat supports PyTorch, is easy to use, and is open source.

研究动机与目标

  • 解决用户在缺乏目标硬件访问权限的情况下,为DNN训练选择成本高效GPU的挑战。
  • 减少对仅覆盖有限模型和GPU型号的不完整或过时基准测试的依赖。
  • 实现在新型或不可用GPU架构上对自定义DNN的准确性能预测。
  • 支持实际决策场景,如云GPU采购、本地集群调度及硬件采购。

提出的方法

  • 该方法利用DNN训练的重复性特征,基于在参考GPU上的单次测量预测完整训练迭代时间。
  • 采用波形缩放技术——源自GPU执行模型的推导方法——将源GPU上的操作级执行时间外推至目标GPU。
  • 采用预训练的多层感知机(MLPs)对不同GPU架构间的执行时间缩放关系进行建模与预测。
  • 系统与PyTorch集成,作为轻量级Python库运行,可轻松对DNN训练工作流进行插桩。
  • 测量在参考GPU上单个训练迭代中各操作的执行时间,并将其缩放以估算其他GPU上的性能。
  • 该方法结合分析缩放(波形缩放)与数据驱动建模(MLPs),在多种DNN和硬件上显著提升了预测准确性。

实验结果

研究问题

  • RQ1是否仅通过在一台GPU上进行一次运行时测量,即可准确预测DNN训练迭代在另一台GPU上的执行时间?
  • RQ2波形缩放与数据驱动模型(如MLPs)在预测DNN训练跨GPU性能方面相比如何?
  • RQ3该方法在多大程度上可减少GPU选型工作流中对目标硬件直接基准测试的需求?
  • RQ4该方法在ResNet-50、Inception v3、Transformer、GNMT和DCGAN等多样化DNN架构上是否具备泛化能力?
  • RQ5该预测器是否能在真实场景(如云采购或集群调度)中指导成本高效的GPU选型?

主要发现

  • Habitat在六种不同GPU架构上对五种多样化DNN模型(ResNet-50、Inception v3、Transformer、GNMT和DCGAN)实现了平均11.8%的预测误差。
  • 该方法成功预测出针对GNMT优化成本效率将导致选择不同的GPU,证明了其在硬件选型中的实际应用价值。
  • 对于DCGAN训练,Habitat正确预测出V100相较于消费级2080Ti并无显著性能优势,挑战了高端GPU必要性的固有假设。
  • 波形缩放与基于MLP的预测均对整体准确性有贡献,且混合方法的性能优于单独使用任一方法。
  • 该系统无需直接访问目标GPU即可实现准确的性能估算,显著降低了获取信息以支持硬件采购和调度决策的门槛。
  • Habitat已开源并集成至PyTorch,使研究人员和实践者能够轻松将其应用于真实世界的深度学习工作流。

更好的研究,从现在开始

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

无需绑定信用卡

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