[Lobsters 요약] Apple Neural Engine (ANE)의 내부 구조 역공학 및 향후 전망
67
설명
2026년 8월 10일, Eileen Yoon은 Apple의 M1 칩에 탑재된 Neural Engine(ANE)에 대한 심층적인 역공학 분석을 공개했습니다.
이 분석은 ANE의 연산, 스케줄러, 메모리 계층 구조를 상세히 파헤치며, 특히 CNN 중심 설계에서 트랜스포머 워크로드로의 전환에 대한 Apple의 초기 가정과 현재의 변화를 조명합니다.
본 글은 ANE의 작동 방식과 그 한계를 탐구하며, 향후 NPU의 발전 방향에 대한 시사점을 제공합니다.
### 배경 설명
Apple Neural Engine(ANE)은 2017년 A11 Bionic 칩에 처음 도입된 이후, 모바일 기기에서의 머신러닝 추론 성능 향상을 목표로 설계되었습니다. 초기에는 주로 이미지 처리와 같은 CNN(Convolutional Neural Network) 기반 워크로드에 최적화되어 있었으며, 이는 예측 가능한 데이터 흐름과 높은 연산 재사용성을 특징으로 합니다. ANE의 핵심은 대규모 병렬 곱셈-누산(MAC) 유닛 배열로, 이를 통해 효율적인 텐서 연산을 수행합니다. 그러나 딥러닝 모델의 발전으로 트랜스포머와 같은 새로운 아키텍처가 부상하면서, ANE의 설계가 이러한 변화에 얼마나 잘 대응할 수 있는지에 대한 의문이 제기되었습니다.
특히, 2025년 출시될 것으로 예상되는 M5 칩에서 ANE 코어가 GPU 코어와 통합된다는 소식은 독립형 NPU(Neural Processing Unit)의 시대가 저물고 있음을 시사합니다. 이는 ANE가 처음 설계될 당시의 ML 워크로드 가정과 현재의 트랜스포머 중심 워크로드 간의 간극을 보여주는 중요한 지표입니다. 본 분석은 이러한 배경 속에서 ANE의 내부 작동 메커니즘을 역공학적으로 파헤쳐, Apple이 초기 NPU 설계에 어떤 가정들을 담았는지, 그리고 현재의 ML 생태계 변화에 어떻게 대응하고 있는지를 이해하는 데 초점을 맞춥니다.
### 1. 연산(Compute): MAC 유닛과 비선형 활성화 함수
M1 ANE의 연산 코어는 16개의 병렬 코어로 구성되며, 각 코어는 128개의 FP16 또는 256개의 INT8 MAC 레인을 가집니다. 각 MAC 레인은 곱셈과 덧셈을 수행하여 누적 합계를 계산합니다. ANE의 핵심은 MAC 유닛 자체보다는 MAC 연산을 둘러싼 데이터 흐름에 있습니다. 2017년 CNN 모델에 특화된 설계는 예측 가능한 재사용 패턴을 활용하여 효율적인 데이터 흐름을 가능하게 했습니다. 예를 들어, TANH 활성화 함수는 33개의 FP16 값으로 구성된 룩업 테이블(LUT)을 통해 구현되며, 이는 piecewise-linear 보간법을 사용하여 근사치를 계산합니다. ReLU와 같은 다른 활성화 함수 역시 효율적으로 처리됩니다. 또한, ANE는 연산 후 스케일링 및 바이어스 변환을 지원하며, 이는 컴파일 시점에 컨볼루션 연산과 통합되어 효율성을 높입니다.
### 2. 스케줄러(Scheduler): 작업 디스크립터 기반의 명령 실행
ANE 드라이버는 직접적으로 CONV, MATMUL, RELU와 같은 연산 코드를 실행하는 대신, 이미 컴파일된 작업 디스크립터(Task Descriptor, TD)의 명령 스트림을 ANE 하드웨어에 로드합니다. 작업 관리자(Task Manager)는 이 TD를 순차적으로 처리하며, 각 TD는 ANE의 하드웨어 구성 레지스터에 대한 제어 DMA(Control DMA) 쓰기 패킷의 시퀀스로 구성됩니다. ANE는 고정된 ISA(Instruction Set Architecture)를 가지지 않으며, TD는 하드웨어 구성 레지스터에 대한 일련의 쓰기 작업으로, ANE의 데이터 흐름을 설정하는 역할을 합니다. 작업 큐(Task Queue, TQ)는 8개의 복사본으로 존재하며, 각각 상태, 우선순위, 그리고 두 세트의 명령 스트림 디스크립터를 가집니다. 이는 소프트웨어가 다른 슬롯을 수정하는 동안 한 슬롯이 실행될 수 있도록 하는 핑퐁(ping-pong) 스테이징 방식입니다.
### 3. 메모리 계층 구조 및 대역폭 한계
M1 ANE는 시스템 DRAM에 접근할 수 있지만, 직접적인 제로-복사 스트리밍은 불가능하며, 데이터를 로컬 ANE 메모리(SRAM)로 먼저 복사해야 합니다. 이는 ANE의 성능이 로컬 메모리 스트리밍 처리량에 의해 제한될 수 있음을 의미합니다. M1 ANE는 11 TOP/s의 연산 성능을 제공하지만, 시스템 DRAM 대역폭은 68 GB/s에 불과합니다. 이를 통해 산출된 산술 강도(arithmetic intensity)는 162 OP/byte로, DRAM 대역폭이 병목이 되지 않으려면 이보다 높은 수준의 온칩 재사용이 필요합니다. ANE는 16개의 코어 각각에 64 KiB의 커널 메모리(KMem)와 L1 스테이징 영역을, 그리고 공유 L2 캐시(2 MiB)를 가집니다. 커널(가중치)은 전용 KernelDMA를 통해 KMem으로 로드되며, 입력 타일은 TileDMASrc를 통해 L2로 로드됩니다. 결과는 L2에서 TileDMADst를 통해 DRAM으로 다시 쓰여집니다. KernelDMA는 단방향 로드 전용이며, TileDMA는 양방향으로 사용되어 중간 결과를 재활용할 수 있습니다. 이는 가중치가 자주 변경되지 않는 CNN 워크로드에 최적화된 설계이지만, KV 캐시와 같이 동적으로 변하는 트랜스포머 워크로드에는 비효율적일 수 있습니다.
### 4. ANE의 현재와 미래: GPU와의 비교
단일 토큰 디코딩과 같은 트랜스포머 워크로드는 가중치 재사용성이 낮고 메모리 접근이 빈번하여 ANE에게 불리합니다. ANE와 GPU는 동일한 DRAM을 공유하므로, ANE가 GPU보다 느리다면 이는 DMA 컨트롤러가 충분한 병렬 요청을 처리하여 DRAM 대역폭을 포화시키지 못하기 때문입니다. 측정 결과, ANE의 KernelDMA는 최대 38 GB/s, TileDMA는 59 GB/s의 대역폭을 보이며, 이는 GPU의 77.70 GB/s보다 낮습니다. 또한, ANE의 커널 및 타일 DMA 요청은 직렬로 처리되어 총 DRAM 처리량이 더욱 제한됩니다. 이러한 대역폭 한계는 ANE의 성능을 크게 제약하며, 독립형 NPU의 미래에 대한 의문을 더욱 증폭시킵니다. M5 칩에서 ANE 코어가 GPU와 통합되는 것은 이러한 한계를 극복하고 변화하는 ML 워크로드에 대응하기 위한 Apple의 전략으로 해석될 수 있습니다.
### 가치와 인사이트
본 분석은 Apple Neural Engine(ANE)의 내부 아키텍처를 역공학적으로 깊이 있게 탐구함으로써, 2017년 CNN 중심의 ML 환경에서 설계된 하드웨어가 현대의 트랜스포머 기반 워크로드에 어떻게 대응하는지에 대한 귀중한 통찰을 제공합니다. 특히, ANE의 연산 코어, 스케줄링 메커니즘, 그리고 메모리 계층 구조에 대한 상세한 설명은 하드웨어 설계와 소프트웨어 최적화 간의 상호작용을 이해하는 데 도움을 줍니다. KernelDMA와 TileDMA의 분리, KMem과 L2 캐시의 역할, 그리고 이로 인한 대역폭 병목 현상에 대한 분석은 NPU 설계 시 고려해야 할 중요한 요소들을 명확히 보여줍니다. 또한, ANE와 GPU의 DRAM 대역폭 비교는 특정 워크로드에서 어떤 하드웨어가 더 유리한지를 객관적으로 판단할 수 있는 근거를 제시합니다. 이러한 정보는 AI 하드웨어 개발자, 머신러닝 엔지니어, 그리고 시스템 아키텍트에게 실무적인 설계 결정과 성능 최적화를 위한 중요한 참고 자료가 될 것입니다.
### 향후 전망
Apple의 M5 칩에서 ANE 코어가 GPU와 통합된다는 점은 독립형 NPU의 시대가 저물고 있음을 강력히 시사합니다. 이는 향후 모바일 및 엣지 디바이스의 AI 가속기 설계가 범용적인 GPU 아키텍처 내에서 특화된 연산 유닛을 통합하는 방향으로 나아갈 가능성을 높입니다. ANE의 설계는 초기 CNN 워크로드에 최적화되었으나, 트랜스포머와 같은 새로운 모델 아키텍처의 등장으로 인해 그 한계가 명확해졌습니다. 향후 NPU는 더 유연하고 다양한 워크로드를 지원할 수 있도록 설계될 것이며, 이는 GPU와의 긴밀한 통합 또는 새로운 형태의 가속기 아키텍처의 출현으로 이어질 수 있습니다. 또한, 메모리 대역폭 병목 현상은 여전히 중요한 과제로 남아있으며, 이를 해결하기 위한 새로운 메모리 기술 및 데이터 이동 방식에 대한 연구가 활발히 진행될 것으로 예상됩니다. Apple의 이러한 움직임은 경쟁사들에게도 영향을 미쳐, AI 하드웨어 생태계 전반의 변화를 촉진할 것입니다.
📝 원문 및 참고
- Source: Lobsters
- 토론(Lobsters): [lobste.rs](https://lobste.rs/s/mzgtjg/retrospectively_reverse_engineering)
- 원문: [링크 열기](https://eiln.github.io/posts/ane.html)
---
출처: Lobsters · [원문 링크](https://eiln.github.io/posts/ane.html)
이 글에 대한 한 줄 의견
신고 · 불법·유해·아동 안전(CSAE) 관련 콘텐츠

댓글 0
아직 댓글이 없습니다. 로그인하면 바로 의견을 남길 수 있습니다.