AI VIDEO BRIEFING
미니 PC 3대로 만든 AI 클러스터 실험 — 한 대로는 못 담는 70B 모델 구동과 메모리 벽의 교훈
인텔 NUC 미니 PC 3대를 묶어 한 대로는 못 담는 70B 밀집 모델을 돌린 실험이다. 모델을 쪼개면 오히려 느려지지만 크기 문제는 풀렸고, 속도의 진짜 병목은 메모리 대역폭이었다. 크기와 속도는 서로 다른 클러스터 전략으로 풀어야 한다.

핵심 메시지
쉽게 이해하기
발표자는 ASUS NUC 16 Pro 미니 PC 3대를 준비했다. 각 기기에는 인텔 Core Ultra X7 칩과 새 Arc B390 내장 GPU, 그리고 전용 AI 엔진인 NPU가 들어 있고 메모리는 64GB다. 목표는 이 작은 기기 여러 대를 묶어 한 대로는 감당 못 하는 큰 모델을 돌릴 수 있는지 확인하는 것이었다.
먼저 한 대 안에서 세 연산 엔진을 비교했다. GPU를 켜자 프롬프트를 읽는 속도가 초당 약 1,000토큰에서 2,200토큰으로 두 배가 됐다. 그러나 답을 써 내려가는 토큰 생성 속도는 CPU와 GPU 모두 초당 약 46토큰으로 똑같았다. 토큰 생성은 메모리 대역폭에 묶이기 때문에, 통합 메모리를 공유하는 이 칩에서는 GPU의 힘이 생성 속도를 끌어올리지 못한다. 이것이 이 영상 전체를 관통하는 '메모리 벽'이다.
NPU도 시험했다. 널리 쓰이는 llama.cpp는 NPU와 통신하지 못해 인텔 자체 소프트웨어인 OpenVINO를 써야 했고, 작은 모델은 돌았지만 큰 모델은 실패해 직접 모델을 다시 빌드해야 했다. 흥미롭게도 같은 GPU에서 OpenVINO와 llama.cpp를 맞붙이자 오픈소스 llama.cpp(Vulkan)가 인텔 자체 소프트웨어보다 약 2.5배 빨랐다(초당 34토큰 대 14토큰). 전력은 NPU가 가장 적게 먹었지만(17W 대 GPU 24W, CPU 30W), 토큰당 효율은 작업을 더 빨리 끝내는 GPU가 가장 좋았다.
본론인 클러스터에서 발표자는 먼저 모델 하나를 3대에 쪼개 나눴다. 결과는 기대와 반대로 더 느려졌다(한 대 약 35토큰/초 → 3대 약 17토큰/초). 토큰마다 기기 사이를 이더넷으로 오가야 하므로, 성능을 더하는 게 아니라 트래픽을 더하는 꼴이 된 것이다. 20Gb 썬더볼트로 세 대를 삼각형으로 직접 연결해도 70B 모델의 생성 속도는 초당 1.43토큰으로 사실상 그대로였다. 병목은 케이블 대역폭이 아니라 메모리 속도와 끊임없이 오가는 수많은 작은 메시지였다.
그럼 클러스터는 무엇을 위한 것일까. 발표자는 어느 한 대도 담을 수 없는 밀집(dense) 모델 Llama 3.3 70B(75GB)를 골랐다. 한 대의 메모리는 64GB라 물리적으로 못 올리지만, 3대를 합치면 192GB 풀이 되어 실제로 구동됐다. 속도는 초당 1.4토큰으로 느렸지만 '돌아간다'는 것이 핵심이었다. 반대로 한 대에 들어가는 모델이라면, 각 기기에 전체 사본을 올리고 요청을 나눠 보내는 방식으로 처리량이 초당 약 196토큰에서 500토큰 가까이(약 2.5배) 올랐다. 즉 크기를 위해 쪼개는 것과 속도를 위해 복제·분산하는 것은 전혀 다른 전략이며 섞으면 안 된다.
주요 인사이트
- AI 추론에는 프롬프트 처리와 토큰 생성 두 단계가 있고, GPU는 앞 단계를, 메모리 대역폭은 뒤 단계를 좌우한다. 생성 속도가 안 나오면 GPU가 아니라 메모리를 봐야 한다.
- 최신 칩이라도 소프트웨어 스택이 못 따라오면 제 성능이 안 난다. 인텔 GPU에서 인텔 자체 소프트웨어보다 오픈소스 llama.cpp가 더 빨랐다는 점이 이를 보여준다.
- 모델을 여러 대에 쪼개는 클러스터는 속도를 위한 것이 아니라, 한 대에 안 들어가는 큰 모델을 '올리기 위한' 것이다.
- 여러 대로 처리량을 늘리려면 모델을 쪼개지 말고 각 기기에 통째로 복제한 뒤 요청을 분산해야 한다. 목적에 맞는 클러스터 방식을 골라야 한다.
자주 묻는 질문
미니 PC 여러 대를 묶으면 AI 모델이 더 빨라지나요?
모델을 쪼개 나누는 방식은 오히려 느려집니다. 토큰마다 기기 사이를 네트워크로 오가야 해 트래픽이 늘기 때문입니다. 속도를 높이려면 각 기기에 모델 전체 사본을 두고 요청을 분산해야 합니다.
한 대로 못 담는 70B 모델을 3대로 정말 돌릴 수 있었나요?
네. 한 대 메모리는 64GB라 75GB짜리 밀집 모델을 못 올리지만, 3대를 합쳐 192GB 풀을 만들자 실제로 구동됐습니다. 다만 속도는 초당 약 1.4토큰으로 느렸습니다.
토큰 생성 속도가 GPU를 켜도 안 오르는 이유는 무엇인가요?
토큰 생성은 메모리 대역폭에 좌우되는 '메모리 벽' 작업이기 때문입니다. GPU는 프롬프트 처리는 두 배로 빠르게 했지만 생성 속도는 CPU와 거의 같았습니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗