애플 실리콘의 핵심 부품인 애플 뉴럴 엔진(ANE)이 대규모 언어모델(LLM)을 처리할 때 GPU보다 성능이 떨어지는 근본적인 원인이 연산 능력보다는 데이터 이동 속도에 있다는 심층 분석이 나왔습니다. ANE는 신경망 연산에 특화된 칩이지만, M1 ANE의 내부 구조와 메모리 전송 실험 결과, LLM의 특성상 발생하는 데이터 병목 현상을 해결하기 어렵다는 점이 드러났습니다. 이는 ANE가 주로 이미지 처리용 신경망(CNN)에 맞춰 설계되었기 때문입니다.
M1 ANE는 트랜스포머 모델에 필요한 연산을 수행할 수 있는 16개의 연산 코어를 갖추고 있으며, 각 코어는 FP16 곱셈 누산(MAC) 레인 128개 또는 INT8 레인 256개를 포함해 총 2,048개의 병렬 레인을 제공합니다. 하지만 LLM이 토큰을 하나씩 생성할 때마다 방대한 모델의 가중치를 계속해서 읽어와야 하는데, ANE의 가중치 읽기 경로는 약 38 GB/s, 입력 읽기 경로는 약 59 GB/s로 GPU의 약 78 GB/s보다 느립니다. 더 큰 문제는 이 두 경로가 동시에 사용될 때 전송 시간이 중첩되지 않고 더해져 전체 지연이 커진다는 점입니다. 이는 ANE의 메모리 계층과 데이터 경로가 가중치를 반복적으로 재사용하는 CNN 방식에 최적화되어, LLM처럼 매번 새로운 가중치를 로드해야 하는 시나리오를 충분히 고려하지 않았음을 시사합니다.
이러한 데이터 이동 병목 현상은 단순히 드라이버를 개방하거나 연산 성능만 높이는 방식으로는 해결하기 어렵습니다. ANE의 설계는 작은 면적, 예측 가능한 데이터 이동, 낮은 지연과 소비 전력에 유리하지만, 컴파일러가 텐서 동작을 명시적으로 스케줄링해야 하는 제한적인 인터페이스를 가집니다. 즉, 하드웨어 수준에서 데이터 전송 경로와 실제 대역폭을 개선하는 것이 단일 토큰 생성 속도를 높이는 핵심 과제입니다. 애플이 2025년 M5 칩에서 ANE 코어를 GPU 코어 안에 통합하는 변화를 예고한 것은, 독립형 NPU의 이러한 한계를 인지하고 LLM 시대에 맞춰 아키텍처를 재편하려는 움직임으로 해석될 수 있습니다.