얕은 신경망의 순전파 및 역전파를 위한 GPU 병렬화 전략: CUDA 기반 비교 연구
요약
얕은 신경망의 순전파 및 역전파 성능을 높이기 위한 CUDA 기반 GPU 병렬화 전략을 비교 연구했습니다. 공유 메모리 타일링, 메모리 병합, 커널 융합 기술을 통해 대규모 데이터셋에서 기본 구현 대비 1.41배의 속도 향상을 달성했습니다.
핵심 포인트
- 타일형 공유 메모리를 통한 뱅크 충돌 제거
- 전역 메모리 액세스 최적화를 위한 가중치 행렬 사전 전치
- MatMul+ReLU 커널 융합을 통한 메모리 왕복 최소화
- NVIDIA Tesla T4 환경에서 실행 시간 21.0초에서 14.8초로 단축
본 연구에서는 얕은 신경망 (Shallow Neural Network)의 순전파 (Forward Propagation) 및 역전파 (Backward Propagation)에 적용되는 CUDA 최적화 전략에 대한 비교 연구를 제시합니다. 세 가지 계층적 최적화가 평가되었습니다: (1) +1-컬럼 패딩 (padding)을 통해 뱅크 충돌 (bank-conflict)을 제거한 타일형 공유 메모리 (tiled shared memory), (2) 병합된 전역 메모리 액세스 (coalesced global memory access)를 위한 사전 전치된 가중치 행렬 (pre-transposed weight matrices), (3) 중간 단계의 전역 메모리 왕복 (global-memory round-trips)을 제거하는 MatMul+ReLU 융합 커널 (fused MatMul+ReLU kernel). NVIDIA Tesla T4 (CUDA 13.0) 환경에서 세 가지 데이터셋 크기에 대해 실험을 진행한 결과, 완전히 최적화된 구현은 대규모 데이터셋 (25,600개 샘플)에서 기본 CUDA 버전 대비 1.41배의 속도 향상을 달성하였으며, 실행 시간을 21.0초에서 14.8초로 단축했습니다. 결과는 순차적 CPU 베이스라인 및 OpenMP 병렬 구현과 비교되었으며, 이는 GPU 가속 딥러닝 프리미티브 (deep learning primitives)에서 메모리 액세스 최적화의 효과를 입증합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv cs.LG의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기