게이밍 PC 2대 + 이더넷 연결 M4 Pro 맥북 + USB-C 연결 아이폰 17 프로 맥스 2대: 60k 컨텍스트에서 37-39 tok/s로 구동되는 Qwen3.8 Flash Next
2 gaming PCs + an M4 Pro MacBook over Ethernet + 2 iPhone 17 Pro Maxes over USB-C: Qwen3.8 Flash Next at 37-39 tok/s at 60k context (262k layout in the works)
핵심 요약
여러 기기를 연결해 거대 모델을 분산 추론하는 실험적 설정을 공유하며 놀라운 성능을 입증했습니다.
- 분산 추론 설정 — PC, 맥북, 아이폰을 이더넷과 USB-C로 연결해 거대 모델을 구동함
- 파이프라인 추론 — draft head를 활용한 추론 기법으로 여러 기기 간의 병목 현상을 해결함
- 성능 측정 — 60k 컨텍스트에서 초당 37-39 토큰의 속도로 안정적인 추론 성능을 기록함
- 향후 계획 — 더 나은 최적화와 함께 앱 스토어 출시 및 설치 편의성 개선을 준비 중임

면책 조항: 영상 속 대시보드의 프리필(prefill) 속도는 캐시된 프롬프트 토큰을 다시 읽는 것처럼 계산해서 실제보다 높게 나옴. 자막이랑 아래에 적힌 수치가 서버의 실제 엔드투엔드 성능이니까 그걸 믿으셈. 화면에 나오는 디코드 수치는 정확함.
지난번 글 올리고 나서 내가 가진 기기 한 대로는 도저히 안 돌아가는 걸 해보고 싶었음. Qwen 3.8 Flash Next는 48개 레이어에 레이어당 512개 전문가(expert)가 들어간 모델인데, 3비트로 압축해도 내 24GB 맥북으로는 어림도 없음. 근데 우리 집에 굴러다니는 실리콘 쪼가리들이 좀 많음. RTX 2060 Super(32GB DDR4) 달린 게이밍 PC, RX 9060 XT(16GB DDR5) 달린 PC, M4 Pro 맥북, 그리고 아이폰 17 Pro Max 두 대. 그래서 이 다섯 대를 하나로 묶어버림.
어떻게 나눴냐면:
PC 1 (2060 Super, 8GB): 레이어 0~9, 출력 레이어, 그리고 모델 자체의 멀티 토큰 예측 드래프트 헤드.
MacBook Pro (M4 Pro, 24GB): 레이어 10~29.
아이폰 두 대 (A19 Pro): 레이어 10~18 담당. 토큰 하나당 512개 전문가 중 10개를 골라냄. 맥이 USB-C로 그 선택지를 보내면, 각 폰의 GPU가 그걸 돌려서 1ms 정도 만에 답을 줌. 맥은 자주 쓰는 전문가들은 자기 메모리에 박아두고 직접 돌림.
PC 2 (9060 XT, 16GB): 레이어 30~47.
PC랑 맥은 이더넷으로 연결하고, 폰은 10Gb/s USB-C로 연결함. 모든 가중치가 VRAM, 고정된 RAM, 혹은 통합 메모리에 올라가 있어서 디스크에서 읽어오거나 스왑되는 일은 없음.
기기 다섯 대를 일렬로 세우면 보통 네 대는 노는 꼴이 되는데, 파이프라인 추론(pipelined speculation)으로 해결함. PC 1의 드래프트 헤드가 다음 토큰 몇 개를 예측하면, 전체 체인이 한 번에 검증함. 그 배치가 맥, 폰, PC 2를 거치는 동안 PC 1은 벌써 다음 토큰을 예측하고 있는 식임. 단계마다 평균 2.2 토큰 정도 뽑힘.
에이전트가 실제로 보내는 값으로 서버에서 측정한 결과 (온도 0.6, top-p 0.95, top-k 20, 중간 정도 사고, 실제 코드 프롬프트, 그리디 아님):
16k 컨텍스트: 쓰기 42 tok/s, 프롬프트 읽기 728~744 tok/s
32k 컨텍스트: 쓰기 39~41 tok/s, 읽기 844~852 tok/s
60k 컨텍스트: 쓰기 37~39 tok/s, 읽기 856~895 tok/s
영상 속 에이전트 세션에서 프롬프트가 캐시된 상태면, 짧은 후속 질문은 0.5초 만에 시작함. 새로운 툴 출력이 포함된 턴은 고정 2.9초에 새로운 토큰당 768 tok/s 정도 걸림. 텍스트 예측 가능성에 따라 널뛰긴 하는데, 세션 전체 평균 쓰기 속도는 35 tok/s였음. 40 넘게 튀는 것도 봤음.
이 구성으로 긴 컨텍스트도 가능함. 69.6k까지 돌아감. PC 2의 16GB가 한계치임. 레이아웃을 좀 바꿔서 레이어 두 개를 PC 1로 옮기고 맥이랑 폰에서 8비트 KV를 쓰면 164k 토큰 넘는 프롬프트도 읽히고, 60k에서 31~33 tok/s로 써짐. 262k를 꽉 채우려면 폰마다 어텐션 레이어 캐시를 하나씩 들고 있어야 하는데, 이게 A19 두 대를 쪼개 쓰는 방식임. 오늘 A19 하나를 빼야 해서 그 테스트는 나중에 할 예정. 최적화 더 하면 더 빨라질 듯.


