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)|2021. 01. 31.
Advanced Neural Network Applications참고 문헌 48인용 수 4
한 줄 요약

이 논문은 참조 GPU에서 단일 측정값을 사용하여 다양한 모델과 GPU 아키텍처 간에 정확한 DNN 학습 반복 시간 예측을 가능하게 하는 런타임 기반 성능 예측기인 Habitat을 제안한다. 웨이브 스케일링과 사전 훈련된 다층 퍼셉트론을 적용하여, 다양한 모델과 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로 외삽한다.
  • 다양한 GPU 아키텍처 간 실행 시간 스케일링을 모델링하고 예측하기 위해 사전 훈련된 다층 퍼셉트론(MLP)을 활용한다.
  • PyTorch와 통합되어 경량 파이썬 라이브러리로 작동하여 DNN 학습 워크플로우에 쉽게 통합할 수 있다.
  • 참조 GPU에서 단일 학습 반복 동안 개별 연산의 실행 시간을 측정하고, 이를 다른 GPU에서의 성능을 추정하기 위해 스케일링한다.
  • 분석적 스케일링(웨이브 스케일링)과 데이터 기반 모델링(MLP)을 조합하여 다양한 DNN과 하드웨어에서의 예측 정확도를 향상시킨다.

실험 결과

연구 질문

  • RQ1한 GPU에서의 단일 런타임 측정값이 다른 GPU에서 DNN 학습 반복 실행 시간을 정확하게 예측할 수 있는가?
  • RQ2웨이브 스케일링는 DNN 학습을 위한 GPU 간 성능 예측에서 데이터 기반 모델(예: MLP)과 비교해 어떻게 성능을 내는가?
  • RQ3이 방법은 GPU 선택 워크플로우에서 대상 하드웨어에 직접 벤치마크를 수행하는 데서 얼마나 줄일 수 있는가?
  • RQ4이 방법은 ResNet-50, Inception v3, 트랜스포머, GNMT, DCGAN과 같은 다양한 DNN 아키텍처로 일반화되는가?
  • RQ5이 예측기는 실제 상황, 예를 들어 클라우드 조달 또는 클러스터 스케줄링에서 비용 효율적인 GPU 선택을 이끌 수 있는가?

주요 결과

  • Habitat는 여섯 대의 다른 GPU 아키텍처에서 다섯 가지 다양한 DNN 모델—ResNet-50, Inception v3, 트랜스포머, GNMT, DCGAN—에 대해 평균 예측 오차 11.8%를 달성한다.
  • 비용 효율성 최적화를 고려할 경우 다른 GPU를 선택해야 한다는 점을 성공적으로 예측하여, 하드웨어 선택에 실질적인 유용성을 보여준다.
  • DCGAN 학습의 경우, V100이 소비자용 2080Ti보다 유의미한 성능 향상이 없다고 정확히 예측하여 고성능 GPU가 반드시 필요하다는 가정을 도전한다.
  • 웨이브 스케일링과 MLP 기반 예측 모두 전체 정확도에 기여하며, 하이브리드 접근 방식이 개별적으로 사용했을 때보다 더 뛰어난 성능을 보인다.
  • 이 시스템은 대상 GPU에 직접 접근할 필요 없이 정확한 성능 추정을 가능하게 하여, 정보 기반 하드웨어 조달 및 스케줄링 의사결정의 장벽을 낮춘다.
  • Habitat는 오픈소스로 공개되어 있으며 PyTorch와 통합되어 있어 연구자와 실무자들이 실제 딥러닝 워크플로우에서 쉽게 사용할 수 있도록 한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.