[논문 리뷰] A Semi-Decoupled Approach to Fast and Optimal Hardware-Software Co-Design of Neural Accelerators
이 논문은 신경 가속기 최적화를 위한 검색 공간을 수십만 배로 줄이면서도 최적성을 유지하는 반분리형 하드웨are-소프트웨어 공동 설계 프레임워크를 제안한다. 지연 시간과 에너지 소비의 단조성 특성(다양한 가속기 간 아키텍처 순위가 높게 상관됨)을 활용하여, 먼저 단일 프록시 가속기에서 최적 아키텍처의 소량 집합을 식별한 후, 이 작은 집합 내에서만 가속기를 공동 최적화함으로써, 근사 최적 성능를 달성하면서도 검색 비용을 크게 감소시킨다.
In view of the performance limitations of fully-decoupled designs for neural architectures and accelerators, hardware-software co-design has been emerging to fully reap the benefits of flexible design spaces and optimize neural network performance. Nonetheless, such co-design also enlarges the total search space to practically infinity and presents substantial challenges. While the prior studies have been focusing on improving the search efficiency (e.g., via reinforcement learning), they commonly rely on co-searches over the entire architecture-accelerator design space. In this paper, we propose a \emph{semi}-decoupled approach to reduce the size of the total design space by orders of magnitude, yet without losing optimality. We first perform neural architecture search to obtain a small set of optimal architectures for one accelerator candidate. Importantly, this is also the set of (close-to-)optimal architectures for other accelerator designs based on the property that neural architectures' ranking orders in terms of inference latency and energy consumption on different accelerator designs are highly similar. Then, instead of considering all the possible architectures, we optimize the accelerator design only in combination with this small set of architectures, thus significantly reducing the total search cost. We validate our approach by conducting experiments on various architecture spaces for accelerator designs with different dataflows. Our results highlight that we can obtain the optimal design by only navigating over the reduced search space. The source code of this work is at \url{https://github.com/Ren-Research/CoDesign}.
연구 동기 및 목표
- 신경 가속기의 하드웨어-소프트웨어 공동 설계에서 기하급수적으로 증가하는 검색 공간 문제를 해결하여 실용적 구현 가능성을 높이기 위해.
- 아키텍처 공간과 가속기 공간의 크기가 각각 M과 N일 때, O(MN)의 복잡도로 증가하는 완전히 결합된 공동 설계 접근법의 비효율성을 해결하기 위해.
- 검색 비용을 극적으로 줄이면서도 최적 설계 성능를 유지하여, 완전히 분리된 NAS 및 가속기 설계에서 발생하는 부분 최적화 문제를 피하기 위해.
- 다양한 가속기 설계 간에 동일한 프록시 가속기에서 식별된 최적 아키텍처가 거의 동일함을 입증하여, 반분리형 접근법의 핵심 가정을 검증하기 위해.
- 단일 프록시 가속기에서 유도된 소량의 고품질 아키텍처 집합으로 제한함으로써, 검색 비용을 극도로 줄이고 빠르고 확장 가능한 공동 설계를 가능하게 하기 위해.
제안 방법
- 단일 프록시 가속기에서 하드웨어 인식 신경 아키텍처 탐색(NAS)을 적용하여 K개의 최적 아키텍처로 구성된 작고 균형 잡힌 집합 𝒫를 식별한다.
- 다양한 검색 공간(NAS-Bench-301, AlphaNet, 레이어 단위 혼합 데이터플로우)에서 지연 시간과 에너지 소비에 대한 성능 단조성 특성을 활용한다. 이는 다양한 가속기 간 아키텍처 순위가 매우 일관되게 유지됨을 의미한다.
- Stage 2에서 집합 𝒫를 고정된 아키텍처 후보 풀로 사용하여, 전체 아키텍처 공간이 아닌 이 축소된 집합 내에서만 가속기 공동 최적화를 수행한다.
- 수천 개의 가속기 구성과 모델 변형을 대상으로 스피어만의 순위 상관계수(SRCC)를 사용해 단조성 특성을 검증한다.
- 고정 및 혼합 데이터플로우 구성 모두를 포함한 두 가지 벤치마크 검색 공간(NAS-Bench-301 및 AlphaNet)에서 실험을 수행한다.
- 최종 공동 설계 결과를 최신 기술의 완전히 결합된 공동 설계 방법과 비교하여 최적성과 효율성 향상을 확인한다.
실험 결과
연구 질문
- RQ1다양한 가속기 설계 간에 추론 지연 시간과 에너지 소비에 따른 신경 아키텍처 순위가 얼마나 일관되게 유지되는가?
- RQ2단일 프록시 가속기에서 최적화된 소량의 아키텍처 집합을 사용하여, 전체 아키텍처 공간을 재탐색하지 않고도 모든 가속기에서 근사 최적의 공동 설계 결과를 달성할 수 있는가?
- RQ3제안된 반분리형 공동 설계 접근법은 완전히 결합된 공동 설계 및 완전히 분리된 NAS에 비해 검색 비용과 최적성 측면에서 어떻게 비교되는가?
- RQ4다양한 신경 아키텍처 및 가속기 구성 공간, 특히 혼합 데이터플로우 상황에서 성능 단조성의 실증적 강도는 어떠한가?
- RQ5제안된 방법은 검색 공간을 수십만 배로 줄였을 때 최적 또는 근사 최적 성능를 달성할 수 있는가?
주요 결과
- NAS-Bench-301 및 AlphaNet 검색 공간에서 지연 시간과 에너지 소비에 대한 성능 단조성이 강하게 유지됨: 지연 시간과 에너지 소비에 대한 스피어만의 순위 상관계수(SRCC)는 항상 0.9 이상으로 일관되게 유지됨.
- 단일 프록시 가속기에서 식별된 최적 아키텍처 집합이 다른 모든 가속기에서의 최적 집합과 거의 동일함을 입증함으로써, 반분리형 접근법의 핵심 가정이 검증됨.
- 최신 기술의 완전히 결합된 공동 설계 대비 검색 공간을 수십만 배로 줄였음에도 불구하고 최적 또는 근사 최적 성능를 달성함.
- NAS-Bench-301 및 AlphaNet에서 실험한 결과, 프록시의 최적 아키텍처 집합에서 선택된 모델이 최신 기술의 완전히 결합된 공동 설계 방법의 정확도를 그대로 유지함.
- 공동 설계 비용을 크게 감소시킴: 최신 기술의 공동 설계는 각 배포 시나리오당 수십 개의 GPU 시간이 소요되지만, 제안된 방법은 최소한의 오버헤드로 빠르고 확장 가능한 공동 설계를 가능하게 함.
- 각 레이어가 서로 다른 하드웨어 및 데이터플로우 조합으로 매핑 가능한 복잡한 레이어 단위 혼합 데이터플로우 구성에서도 본 방법이 효과를 유지함. 이는 5,000개의 샘플드 믹스처에 대해 높은 SRCC 값으로 확인됨.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.