CPU 추론 성능 최적화: MoE와 3진 가중치를 활용한 로컬 모델 가속
GPU 없이도 로컬 환경에서 대형 모델을 빠르게 구동하기 위한 아키텍처 접근법으로, 최적화 연구에 참고할 만합니다.
요약
최근 r/LocalLLaMA 커뮤니티에서 CPU 환경의 토큰 생성 속도가 전체 파라미터 수가 아닌, 토큰당 활성 파라미터 수(active parameters per token)에 의존한다는 가설이 화제가 되고 있다. CPU에서의 추론은 메모리 대역폭에 제한을 받으므로, 활성 파라미터를 최소화하는 MoE(Mixture of Experts) 아키텍처와 3진 가중치(ternary weights)를 활용하면 모델의 전체 용량을 늘리면서도 생성 속도를 유지할 수 있다는 주장이다. 실제로 Ryzen r5 3600X 환경에서 8.3M 샌드박스 모델에 3진 LUT MLP 등을 적용했을 때, 단일 스레드 속도가 176 tok/s에서 848 tok/s로 대폭 향상된 사례가 보고되었다. 다만, 활성 파라미터 수에 기반한 모델의 용량 확장이 실제 지능 향상으로 이어질지, 혹은 전문가 라우팅 용량 부족으로 인해 성능 저하가 발생할지는 추가적인 검증이 필요하다. 해당 접근법은 GPU 없이 미들급 PC에서 10B 모델을 100 tok/s의 속도로 구동하려는 목표를 가진 이들에게 새로운 가능성을 제시한다.
AI가 원문을 요약한 내용으로, 부정확할 수 있습니다.
원문 제목 The idea: on a CPU the decode speed depends on the active params per token, not the total. My objective is trying to run a 10B at 100tok/s on a mid level PC (No GPU).
원문 보기 ↗