The inference of Recurrent Neural Networks (RNNs) is one of the most widely-used technology for industry nowadays. However, due to challenges such as numerous number of computations, high energy consumption, and limited parallelism, it is hard to execute RNNs efficiently even after software-side optimization. This thesis proposes a hardware accelerator design for sparse matrix - sparse vector multiplication, which works as a major bottleneck of optimized RNNs. To achieve the purpose, this thesis first shows that morphable hardware accelerator, which changes execution mode depending on environment and workloads, can be an appropriate solution, through design space exploration. Next, this thesis designs and evaluates the morphable hardware accelerator architecture. The proposed architecture runs adaptively within various environments and workloads, and it executes sparse matrix - sparse vector multiplication more than 200x faster than Intel Math Kernel Library, a state-of-the-art system library for handling sparse data. Moreover, protocol for selecting execution mode of the proposed architecture achieved 90% accuracy on average, 100% for energy-centric selection especially.
순환 신경망 추론은 오늘날 광범위한 영역에서 사용되는 핵심 기술 중 하나이다. 하지만 많은 계산량과 높은 에너지 소모량 및 제한된 병렬화 가능성을 비롯한 여러 문제 때문에, 소프트웨어적으로 최적화하더라도 순환 신경망을 효율적으로 실행하는 것은 어려운 일이다.
본 학위논문에서는 최적화된 순환 신경망 추론에서의 주요 병목인 희소행렬-희소벡터 곱셈 연산을 효율적으로 실행하기 위한 하드웨어 가속기 구조를 제안한다. 소기의 목적을 달성하기 위하여 본 학위논문에서는 가장 먼저 설계 공간 탐색을 통해 환경과 workload에 따라 실행 모드가 변화하는 가변적 하드웨어 구조가 적절한 해법이 될 수 있음을 보인다. 다음으로 가변적 하드웨어 가속기 구조를 실제로 설계하고 평가한다. 제안하는 구조는 다양한 환경과 workload에 대해 적응성 있게 작동하며, 희소행렬/벡터 연산을 위한 최신 시스템 소프트웨어인 Intel Math Kernel Library보다 최대 200배 이상 빠르게 희소행렬-희소벡터 곱셈을 수행한다. 또한, 제안한 구조의 실행 모드 선택을 위한 프로토콜은 평균 90%의 정확도를 보이며, 특히 에너지 소모량을 기준으로 선정할 경우 100%의 정확도를 나타내었다.