[논문 리뷰] The Potential of the Intel Xeon Phi for Supervised Deep Learning
이 논문은 인텔 Xeon Phi 코프로세서에서 스레드 수준 병렬성과 SIMD 병렬성을 동시에 활용하는 병렬화 프레임워크인 CHAOS를 제안한다. 이는 순환 신경망(CNN)의 지도 학습을 가속화하기 위한 것이다. 인텔 Xeon Phi 7120P에서 244개의 스레드를 활용하여 저자들은 단일 스레드 CPU 학습 대비 103.5배의 성능 향상을 달성하였으며, MNIST 데이터셋에서 큰 CNN에 대해 학습 시간을 31시간에서 3시간으로 단축시켰다. 또한 확장성 분석을 위한 검증된 성능 모델도 개발하였다.
Supervised learning of Convolutional Neural Networks (CNNs), also known as supervised Deep Learning, is a computationally demanding process. To find the most suitable parameters of a network for a given application, numerous training sessions are required. Therefore, reducing the training time per session is essential to fully utilize CNNs in practice. While numerous research groups have addressed the training of CNNs using GPUs, so far not much attention has been paid to the Intel Xeon Phi coprocessor. In this paper we investigate empirically and theoretically the potential of the Intel Xeon Phi for supervised learning of CNNs. We design and implement a parallelization scheme named CHAOS that exploits both the thread- and SIMD-parallelism of the coprocessor. Our approach is evaluated on the Intel Xeon Phi 7120P using the MNIST dataset of handwritten digits for various thread counts and CNN architectures. Results show a 103.5x speed up when training our large network for 15 epochs using 244 threads, compared to one thread on the coprocessor. Moreover, we develop a performance model and use it to assess our implementation and answer what-if questions.
연구 동기 및 목표
- 인텔 Xeon Phi 코프로세서가 CNN을 이용한 지도 학습을 가속화하는 데 잠재력을 지닐 수 있는지 조사하기 위해.
- Xeon Phi 아키텍처에서 스레드 수준 병렬성과 SIMD 병렬성을 효과적으로 활용할 수 있는 병렬화 기법을 설계하고 구현하기 위해.
- 다양한 CNN 아키텍처와 스레드 수를 사용하여 MNIST 데이터셋에서 제안된 접근법의 성능을 평가하기 위해.
- 실행 효율성 평가 및 현재 하드웨어 한계를 초월한 '만약에' 스케일링 분석을 지원할 수 있는 검증된 성능 모델을 개발하기 위해.
제안 방법
- CHAOS 프레임워크는 스레드 수준 병렬성을 활용하여 입력 샘플을 여러 스레드에 분배함으로써 학습 데이터의 동시 처리를 가능하게 한다.
- 컨볼루션 레이어 내부에서 SIMD 병렬성을 적용하여 국소 도함수 및 가중치 기울기 계산을 가속화한다.
- 이 방법은 인텔 Xeon Phi 7120P 코프로세서에 구현되었으며, 다수의 코어와 벡터 유닛을 활용한다.
- 실험적 측정과 이론적 분 析를 기반으로 실행 시간과 확장성을 예측할 수 있는 성능 모델을 개발하였다.
- 다양한 스레드 수와 네트워크 아키텍처로 MNIST 데이터셋에서의 학습 결과를 사용하여 모델을 검증하였다.
- 10,000개의 학습 이미지와 10,000개의 테스트 이미지를 사용하여 작은 및 큰 CNN 아키텍처 모두에서 프레임워크를 평가하였다.
실험 결과
연구 질문
- RQ1단일 스레드 CPU 대비 인텔 Xeon Phi 코프로세서가 CNN의 지도 학습에서 상당한 성능 향상을 이룰 수 있는가?
- RQ2Xeon Phi 아키텍처에서 스레드 수준 병렬성과 SIMD 병렬성이 CNN 학습에 얼마나 효과적으로 활용될 수 있는가?
- RQ3특히 현재 하드웨어 스레드 수를 초월하여 스레드 수가 증가함에 따라 CHAOS 프레임워크의 확장성은 어떻게 되는가?
- RQ4제안된 성능 모델이 실행 시간을 얼마나 정확히 예측할 수 있으며, 향후 Xeon Phi 세대의 최적화를 안내하는 데 얼마나 유용한가?
주요 결과
- CHAOS 프레임워크는 인텔 Xeon Phi 7120P에서 244개의 스레드를 사용하여 큰 CNN을 15 에포크 동안 학습시킬 때, 단일 스레드 CPU 학습 대비 103.5배의 성능 향상을 달성하였다.
- Intel Xeon E5에서의 학습 시간 31시간이 Xeon Phi 7120P에서 3시간으로 단축되어 상당한 성능 향상을 입증하였다.
- 성능 모델은 실행 시간을 정확히 예측하였으며, 확장성 분석이 가능했으며, 고정된 스레드 수에서 이미지 수나 에포크 수를 두 배로 늘일 경우 실행 시간이 약 두 배로 증가하는 것으로 나타났다.
- 고정된 에포크 수와 이미지 수에서 스레드 수를 두 배로 늘려도 실행 시간이 절반으로 줄어들지 않았으며, 이는 데이터 종속성과 메모리 병목 현상으로 인한 수익 감소를 시사한다.
- 모델은 향후 더 많은 하드웨어 스레드를 갖춘 Xeon Phi 세대에서 더 큰 성능 향상이 가능할 것으로 예측하였으며, 향후 최적화의 잠재력이 있음을 시사한다.
- 본 연구는 인텔 Xeon Phi에서 지도 학습을 위한 CNN 학습을 처음으로 조사한 것으로, 이 플랫폼을 위한 딥러닝 연구 분야의 빈도를 메우는 데 기여하였다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.