Training deep neural network (DNN) models is a resource-intensive, iterative process. For this reason, nowadays, complex optimizers like Adam are widely adopted as it increases the speed and efficiency of training. These optimizers, however, employ additional variables and raise the memory demand 2x to 3x of model parameters itself, worsening the memory capacity bottleneck when training large scale DNN models. Moreover, as the size of DNN models is projected to grow even further, it is not practical to assume that the future models will fit in accelerator memory. This has triggered various efforts to offload models to flash-based storage. However, when the model, especially the optimizer is offloaded to flash, the limited I/O bandwidth becomes a bottleneck, severely slowing down the overall training process.
To this end, a solid-state drive (SSD) system with on-die processing (ODP) flash memory architecture is presented for gradient descent-based DNN models. Proposed scheme accelerates, or enables the training of large scale models by processing optimization stage in the storage device, specifically inside the flash dies. ODP capability of proposed architecture eliminates the heavy data movement over external interconnect and internal flash channels. In addition, proposed scheme involves customized flash translation layer (FTL) to support efficient memory management. Overall, it achieves, on average, a 2.8x speedup and a 3.6x improved energy efficiency in the weight update stage over baseline SSD offloading.
심층 신경망 모델을 학습시키는 것은 자원 집약적이고 반복적인 과정이다. 이러한 이유로 최근에는 학습의 속도와 효율성을 높이기 위해 Adam과 같은 복잡한 옵티마이저 (Optimizer)가 널리 사용되고 있다. 그러나 이러한 최적화 도구는 추가적인 변수를 사용하고 메모리 요구량을 모델 매개 변수의 2배에서 3배까지 증가시켜 거대 규모의 심층 신경망 모델을 학습할 때 메모리 용량 부족 문제를 악화시킨다. 더욱이, 심층 신경망 모델의 크기가 훨씬 더 커질 것으로 예상됨에 따라, 미래의 모델이 가속기 메모리 위에 올라갈 것이라고 가정하는 것은 현실적이지 않다. 이러한 이유로 플래시 기반 스토리지로 신경망 모델을 오프로드하려는 다양한 시도가 있었다. 그러나 신경망 모델, 특히 옵티마이저가 플래시에 오프로드되면 제한된 I/O 대역폭에 제약을 받아 전체 학습 과정이 심각하게 느려지는 문제가 발생한다.
이러한 문제를 해결하기 위해 본 논문에서는 경사 하강 기반 심층 신경망 학습을 위한 플래시 기반 온-다이 처리 구조를 갖춘 고체 상태 드라이브 (SSD) 시스템을 제시한다. 제안된 구조는 스토리지 장치, 특히 플래시 다이 내부에서 모델 최적화 과정을 처리하여 대규모 모델의 학습 프로세스를 가능하게 만들거나 가속할 수 있다. 제안된 구조에서 온-다이 처리 기능은 외부 인터페이스 및 내부 플래시 채널을 통한 과도한 데이터 이동을 제거할 수 있다. 추가적으로, 효율적인 메모리 관리를 지원하기 위해 맞춤형 플래시 변환 계층 (Flash translation layer)을 함께 제안한다. 제안된 방법은 기본 SSD 오프로딩 방식에 비해 가중치 업데이트 단계에서 평균 2.8배의 속도 향상 및 3.6배 향상된 에너지 효율성을 보인다.