Skip to main content
QUICK REVIEW

[논문 리뷰] CMSIS-NN: Efficient Neural Network Kernels for Arm Cortex-M CPUs

Oliveira, Afonso, Costa, Diogo|arXiv (Cornell University)|2018. 01. 19.
Advanced Neural Network Applications참고 문헌 6인용 수 304
한 줄 요약

이 논문은 자원이 제한된 IoT 기기에서 양자화된 딥 뉴럴 네트워크를 효율적으로 추론할 수 있도록 하는 Arm Cortex-M CPU 전용 고도로 최적화된 신경망 커널인 CMSIS-NN을 제시한다. 고정점 양자화(8비트 및 16비트), SIMD 최적화 행렬 곱셈, 인-사이트 풀링, SWAR 기반 활성화 함수를 활용하여, 기준 구현 대비 CIFAR-10 CNN에서 4.6배 높은 처리량과 4.9배 높은 에너지 효율성을 달성한다.

ABSTRACT

Deep Neural Networks are becoming increasingly popular in always-on IoT edge devices performing data analytics right at the source, reducing latency as well as energy consumption for data communication. This paper presents CMSIS-NN, efficient kernels developed to maximize the performance and minimize the memory footprint of neural network (NN) applications on Arm Cortex-M processors targeted for intelligent IoT edge devices. Neural network inference based on CMSIS-NN kernels achieves 4.6X improvement in runtime/throughput and 4.9X improvement in energy efficiency.

연구 동기 및 목표

  • 에너지 제약이 있는 IoT 엣지 기기에서 사용되는 에너지 제약이 있는 Arm Cortex-M 마이크로컨트롤러에서 효율적인 딥 뉴럴 네트워크 추론을 가능하게 하기 위해.
  • FPU 지원이 없는 32비트 RISC 프로세서에 신경망을 구현할 때 메모리 프로파일과 계산 오버헤드를 최소화하기 위해.
  • 다양한 신경망 레이어에서 고정점 양자화와 효율적인 커널 실행을 지원하는 소프트웨어 스택을 개발하기 위해.
  • 저성능 임베디드 시스템에서 실시간 엣지 AI 워크로드에 대해 높은 성능과 에너지 효율성을 달성하기 위해.

제안 방법

  • 부동소수점 연산을 피하고 메모리 사용량을 줄이기 위해 2의 거듭제곱 스케일링을 사용하는 8비트 및 16비트 고정점 양자화를 적용한다.
  • 내부 루프 계산을 가속화하기 위해 sign extension과 최소한의 재정렬을 포함한 CMSIS 최적화 데이터 형식 변환(q7_t에서 q15_t로)을 사용한다.
  • q15_t 데이터에 대한 효율적인 MAC 연산을 위해 SMLAD SIMD 명령어를 사용하는 2×2 블록 행렬 곱셈을 구현한다.
  • 임시 메모리 할당을 제거하고 창 기반 풀링 대비 4.5배 빠른 성능 향상을 달성하기 위해 인-사이트 분할 x-y 풀링을 도입한다.
  • QSUB8 명령어를 통한 부호 비트 마스크링을 활용해 SWAR 기반 비트 조작을 통해 ReLU 연산을 가속화한다.
  • 정수 전용 CPU에서 정확도와 성능의 균형을 맞추기 위해 영역별 세분성의 테이블 기반 sigmoid 및 tanh 함수를 사용한다.

실험 결과

연구 질문

  • RQ1메모리가 제한되고 FPU가 없는 Arm Cortex-M CPU에서 딥 뉴럴 네트워크 추론을 어떻게 효율적으로 실행할 수 있는가?
  • RQ2정수 전용 프로세서에서 계산 비용을 최소화하면서 성능과 정확도를 극대화하는 데 가장 적합한 고정점 양자화 전략은 무엇인가?
  • RQ3인-사이트 풀링과 최적화된 행렬 곱셈은 임베디드 신경망에서 메모리 프로파일을 줄이고 처리량을 향상시킬 수 있는가?
  • RQ4SWAR 기반 활성화 함수의 구현은 8비트 데이터 유형에서 얼마나 성능 향상을 이룰 수 있는가?
  • RQ5전체 커널 스택은 처리량과 에너지 효율성 측면에서 기준 구현 대비 어떻게 비교되는가?

주요 결과

  • 기본 구현 대비 표준 CMSIS-DSP 기능을 사용하는 기준 구현 대비, CMSIS-NN 커널은 CIFAR-10 CNN에서 4.6배 높은 처리량과 4.9배 높은 에너지 효율성을 달성한다.
  • 최적화된 CNN은 216 MHz에서 동작하는 Arm Cortex-M7에서 10.1장의 이미지/초 속도로 실행되며, 정확도는 79.9%에 도달하고 최대 메모리 사용량은 133 KB에 그친다.
  • 인-사이트 분할 x-y 풀링은 추가 메모리 오버헤드 없이 기존 창 기반 풀링 대비 4.5배 빠른 성능 향상을 달성한다.
  • SWAR 기법을 사용한 8비트 데이터에서의 ReLU 커널은 기존 스칼라 구현 대비 약 4배 빠른 성능 향상을 달성한다.
  • 양자화에서 2의 거듭제곱 스케일링을 사용함으로써 부동소수점 복원 연산이 필요 없어지며, FPU가 없는 프로세서에서도 전부 정수 연산을 수행할 수 있다.
  • 부분적인 im2col 변환은 메모리 프로파일을 332 KB에서 133 KB로 줄여 NUCLEO-F746ZG 보드에서 네트워크 실행 가능성을 확보한다.

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

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

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

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