아이폰을 24GB 맥북의 보조 GPU로 만들어봤음: Qwen 3.8 27B 프리필 속도 29~44% 향상 & 아이폰이 컨텍스트 윈도우 일부를 담당함
I made my iPhone a second GPU for my 24 GB MacBook: Qwen 3.8 27B prefills 29–44% faster & my holds part of the CTX window.
핵심 요약
아이폰을 USB-C로 맥북에 연결해 보조 GPU로 활용함으로써 LLM 프리필 속도를 최대 44%까지 끌어올린 혁신적인 실험.
- 성능 향상 — 맥북 단독 대비 프리필 속도가 29~44% 개선됨
- 하드웨어 활용 — 아이폰의 GPU와 뉴럴 엔진을 활용해 컨텍스트 처리를 분담함
- 연결 방식 — 10Gb/s USB-C 케이블과 커스텀 소프트웨어로 맥북과 아이폰을 연동함
- 확장 가능성 — 아이패드나 여러 대의 기기를 추가해 성능을 더 높일 수 있음

면책 조항 폰에 표시되는 프리필(Prefill) TPS는 폰이 담당하는 레이어에 대해서만 계산된 수치임. 현재 엔드투엔드(E2E) 프리필 속도를 제대로 보여주도록 수정 중임. 아래 수치는 E2E 프리필 속도 기준으로 정확함.
24GB M4 Pro 맥북에서 에이전트가 읽는 모든 파일이나 도구 결과값은 기다림의 연속임. 8비트 컨텍스트 64k가 Qwen 3.8 27B (IQ4_XS) 옆에 겨우 들어가는 수준이고, 유선 제한을 20480으로 올려도 마찬가지임. 주머니에 iPhone 17 Pro Max가 있길래 이 남는 실리콘을 어떻게 써먹을지 고민해 봄.
결국 10 Gb/s USB-C 케이블이랑 소프트웨어 몇 개면 충분하더라. 맥이 256 토큰 배치마다 1~40 레이어를 돌리고 활성화 값을 폰으로 스트리밍함. 맥이 다음 배치를 시작하는 동안 폰은 GPU로 41~64 레이어를 돌리는 방식임. A19 Pro GPU에는 매트릭스 유닛(Metal 4 텐서 연산)이 있는데, 이게 폰 쪽 연산 속도를 2.4배나 빠르게 만들어줌.
동일한 빌드, 폰 연결 전후 비교, 저장된 에이전트 세션에 2,000 토큰 파일 프리필 시:
-
8k 컨텍스트: 맥 단독 132 tok/s → 맥 + 아이폰 177 tok/s (+35%) (이틀 전 동일 벤치마크 측정)
-
16k 컨텍스트: 맥 단독 109 tok/s → 맥 + 아이폰 157 tok/s (+44%)
-
32k 컨텍스트: 맥 단독 101 tok/s → 맥 + 아이폰 130 tok/s (+29%)
-
48k 컨텍스트: 맥 단독 87 tok/s → 맥 + 아이폰 113 tok/s (+30%)
새로운 27k 토큰 에이전트 세션, 콜드 스타트 기준: 순정 llama.cpp는 245초, 내 포크 버전 맥 단독은 228초, 폰까지 합치면 168초 걸림.
64k가 넘어가면 폰이 역할을 바꿈. 가장 오래된 KV 페이지가 폰으로 넘어가고 맥은 64개 레이어 전체를 다 돌림. 어텐션 레이어마다 폰이 자기 GPU로 이전 키들에 대한 어텐션을 계산하고, 맥이 자기 파트랑 합치는 식임. 글을 쓸 때는 폰의 뉴럴 엔진(Neural Engine)도 작업을 나눠 가짐. 16k 키 단위의 이전 컨텍스트 페이지를 키를 가중치로 사용하는 뉴럴 엔진 모델로 컴파일함. 140k 환경에서 폰 GPU만 쓸 때보다 토큰당 279ms에서 176ms로 속도가 줄었음.
서버는 폰의 가용 메모리에 따라 8비트 컨텍스트를 196k~229k까지 할당함. 즉, 맥 메모리 대신 폰에 최대 5.7GB 정도의 KV 캐시를 박아두는 거라 맥 메모리 사용량이 64k에서 더 안 늘어남. 8비트로 128k까지 세션을 늘려봤는데, 심어둔 팩트 3개 다 잘 기억함. 별도로 4비트 140k 환경에서도 테스트해 봤는데, 생성된 토큰 32개에 대해 맥 단독 실행 결과와 그리디(greedy) 출력이 일치하며 통과함.
안 되는 거: 64k 미만에서 글쓰기 속도 향상은 없음. 그건 맥이 할 일임. 내 포크 버전의 커널(M4 CPU의 SME2 및 Metal 퓨전)과 DFlash2 추측 디코딩을 합치면, 폰 연결 여부와 상관없이 중간 정도 생각하는 모델 기준 30k 컨텍스트에서 순정 llama.cpp의 11.3 tok/s를 25 tok/s까지 끌어올림. SME2는 맥 단독 프리필 속도도 최대 29% 올려줌. 64k가 넘어가면 폰이 글쓰기(이전 키에 대한 어텐션)를 분담하는데, 이게 없으면 맥은 128k를 찍으려고 4비트 컨텍스트로 내려가야 함. 실사용 시 낮은 컨텍스트에서 30 TPS 이상 나오는 것도 봄.


