Skip to main content
QUICK REVIEW

[논문 리뷰] SLIDE : In Defense of Smart Algorithms over Hardware Acceleration for Large-Scale Deep Learning Systems

Beidi Chen, Tharun Medini|arXiv (Cornell University)|2019. 03. 07.
Advanced Neural Network Applications참고 문헌 43인용 수 44
한 줄 요약

SLIDE는 CPU 기반의 희소성, locality-sensitive hashing 접근법으로 다중 코어 병렬화를 가능하게 하여 대형 완전연결 네트워크에서 GPU 가속 TensorFlow를 능가하며 비슷한 정확도에서 벽시계 시간 3.5x–10x까지 속도향상.

ABSTRACT

Deep Learning (DL) algorithms are the central focus of modern machine learning systems. As data volumes keep growing, it has become customary to train large neural networks with hundreds of millions of parameters to maintain enough capacity to memorize these volumes and obtain state-of-the-art accuracy. To get around the costly computations associated with large models and data, the community is increasingly investing in specialized hardware for model training. However, specialized hardware is expensive and hard to generalize to a multitude of tasks. The progress on the algorithmic front has failed to demonstrate a direct advantage over powerful hardware such as NVIDIA-V100 GPUs. This paper provides an exception. We propose SLIDE (Sub-LInear Deep learning Engine) that uniquely blends smart randomized algorithms, with multi-core parallelism and workload optimization. Using just a CPU, SLIDE drastically reduces the computations during both training and inference outperforming an optimized implementation of Tensorflow (TF) on the best available GPU. Our evaluations on industry-scale recommendation datasets, with large fully connected architectures, show that training with SLIDE on a 44 core CPU is more than 3.5 times (1 hour vs. 3.5 hours) faster than the same network trained using TF on Tesla V100 at any given accuracy level. On the same CPU hardware, SLIDE is over 10x faster than TF. We provide codes and scripts for reproducibility.

연구 동기 및 목표

  • 대규모 딥러닝에서 하드웨어 가속에 대한 알고리즘적 대안 탐색의 필요성을 자극한다.
  • 계산을 줄이기 위해 적응적 희소성을 활용하는 실용적인 CPU 기반 시스템(SLIDE)을 제안한다.
  • 스마트한 알고리즘이 산업 규모 데이터셋에서 GPU 가속 베이스라인을 능가할 수 있음을 보여준다.
  • 접근법을 검증하기 위한 재현 가능한 코드와 벤치마크를 제공한다.
  • 제안된 시스템의 성능 특성과 병목 현상을 분석한다.

제안 방법

  • Locality Sensitive Hashing(LSH)을 배치하여 뉴런 활성화를 희소화하고 서브-선형 후보 선택을 가능하게 한다.
  • 각 층에서 K개의 LSH 해시를 사용해 순전파를 위한 희소한 뉴런 하위집합을 생성한다.
  • 활성 연결만 업데이트하고 비동기 SGD(HOGWILD 스타일)를 사용하여 희소 역전파를 수행한다.
  • 배치 수준 독립성을 가진 다중 코어 OpenMP 병렬화를 활용해 거의 선형 확장을 달성한다.
  • 메모리 및 캐시 인식 최적화(예: HugePages, SIMD)를 도입해 CPU 실행 속도를 높인다.
  • 대형 완전연결 네트워크에서 Delicious-200K 및 Amazon-670K 데이터셋으로 SLIDE를 TF-GPU 및 TF-CPU와 비교한다.

실험 결과

연구 질문

  • RQ1LSH를 통한 알고리즘적 희소화가 CPU 코어에서 대형 신경망의 하드웨어 가속 학습을 능가할 수 있는가?
  • RQ2적응적 뉴런 샘플링이 수렴 및 정확도에 미치는 영향은 전체 소프트맥스 / 샘플링된 소프트맥스 벤치마크와 비교하여 어떠한가?
  • RQ3CPU 코어 수와 데이터셋 크기가 커질 때 벽시계 시간과 코어 활용도 측면에서 SLIDE의 확장성은 어떠한가?
  • RQ4실용적 병목 현상(메모리, 대역폭)은 무엇이며 CPU 기반 DL 시스템에서 이를 어떻게 완화할 수 있는가?

주요 결과

  • 44코어 CPU에서의 SLIDE가 같은 정확도에서 TF-Tesla V100 GPU보다 벽시계 시간 측면에서 더 우수하다.
  • Delicious-200K에서 SLIDE는 TF-GPU보다 약 1.8배 빠르고; Amazon-670K에서 약 2.7배 빠르다.
  • SLIDE는 TF-CPU보다 10배 이상 빠르고, 비슷한 반복-정확도 관계로 수렴한다.
  • SLIDE의 메모리 병목 비효율은 코어 증가에 따라 감소하고 TF-CPU는 증가하여 더 나은 CPU 활용을 가능하게 한다.
  • LSH를 통한 적응 샘플링은 활성 뉴런과 업데이트의 상당한 감소를 가능하게 해 최소한의 정확도 손실로 큰 속도향상을 이끈다.
  • SLIDE는 8~32스레드에서 거의 최대 코어 활용도(~80–85%)에 도달해 TF-CPU보다 효율적으로 작동한다.

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

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

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

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