낡은 폰 두 대로 27B를 굴리다 — 곱셈을 덜어내면 발열이 사라진다
집구석 서랍에 굴러다니던 고물 안드로이드 폰 두 대로 27B 모델을 돌렸다는 괴인이 등장했다.
r/LocalLLM에 아침부터 눈을 의심케 하는 게시글 하나가 올라왔다. 구형 스마트폰 두 대를 USB 케이블 하나로 엮어서 무려 27B 파라미터짜리 거대 모델을 구동했다는 이야기다. 작성자는 안드로이드 메모리 부족(OOM)으로 앱이 튕기는 걸 피하려고 llama.rn을 직접 포크해 밑단 C++ 엔진을 새로 짰고, 두 폰 사이에 레이어를 분산 배치하는 클러스터링을 구현했다. 서랍 속에 처박혀 있던 골동품 폰들로 27B를 돌린 것도 충격인데, 속도보다 먼저 눈에 박힌 건 발열 수치였다. 풀 로드 상태에서 최고 온도가 고작 30도. 발열 문제를 하드웨어 쿨러가 아니라 순수 ‘수학’으로 해결해 버렸다(내 폰은 인스타만 켜도 40도 찍는데??).
더 기가 막힌 건 타이밍이다. 같은 서브레딧, 바로 같은 날에 NVIDIA RTX 5090 생산 중단 소식이 터졌다. 로컬 AI 진영의 결전병기이자 끝판왕 그래픽카드가 시장에서 자취를 감춘다는 흉흉한 소문이 도는 마당에, 비싼 그래픽카드 한 장 없이 고물 스마트폰 두 대로 27B를 돌린 용자가 나타난 것이다. 우연치고는 너무 드라마틱하다.
폰 두 대를 USB 케이블로 묶다
출발선은 누구나 겪는 흔한 벽이었다. 스마트폰 하나로 큰 모델을 올리려다 보면 램 부족으로 앱이 강제 종료되기 일쑤다. 보통은 여기서 포기하고 작은 1B 모델로 타협하기 마련인데, 이 작성자는 상상을 초월하는 우회로를 팠다.
샤오미 폰과 ASUS ROG Phone 7 두 대를 USB 케이블로 물리 연결하고, 모델의 트랜스포머 레이어를 양쪽 기기에 쪼개 올리는 자체 RPC 통신 엔진을 구축한 것이다.
모델은 Ternary-Bonsai-2-27B를 2.06bpw로 극한까지 압축한 가중치(총 용량 6.52GiB)를 사용했다. 레이어를 4.36GiB와 2.15GiB로 깔끔하게 절단해 양쪽 폰에 나눠 싣고 실시간으로 연산 데이터를 주고받는다. 클러스터 모드에서 측정된 속도는 초당 2.8토큰(tok/s). 스펙이 낮은 쪽 폰이 병목이라 속도는 느긋하지만, 동기화는 단 한 번의 어긋남 없이 완벽했다. 최신 단일 폰(샤오미 15)으로 단독 구동했을 때는 5.6 tok/s까지 뽑아냈다.
숫자만 보면 2.8 tok/s는 실무에 쓰기엔 인내심 테스트에 가깝다. 하지만 진짜 충격은 ‘품질’ 쪽 데이터였다. 언어 모델의 지능 손실을 측정하는 퍼플렉시티(PPL) 수치가 14.26을 기록했는데, 압축 전 원본 FP16 참조값이 14.05였다. 모델을 2비트 터너리 수준까지 무자비하게 쥐어짰는데도 지능 손실이 겨우 0.2에 불과했다는 뜻이다. 그냥 껍데기만 돌아가는 게 아니라, 진짜 똑똑하게 돌아간다는 걸 증명했다.
곱셈을 없애버리면 열도 사라진다
이 실험의 진짜 백미는 속도가 아니라 ‘발열 제어’에 있다. 스마트폰으로 로컬 LLM 좀 돌려본 사람들은 안다. 1분만 지나도 폰이 핫팩처럼 뜨거워지면서 배터리가 녹아내린다. 그런데 이 클러스터는 온도가 30도 언저리에서 미지근하게 유지된다.
비결은 천재적인 양자화 기법에 있었다. 가중치를 흔한 방식으로 깎지 않고, 하다마드(Hadamard) 회전 행렬 위에서 터너리(-1, 0, 1) 3진법으로 접어버린 것이다. 보통은 런타임에 이걸 역회전해서 복원하느라 연산량이 터지는데, 작성자는 가중치를 GGUF 파일에 접힌 상태 그대로 유지하면서 ARM CPU에서 실시간 하다마드 변환을 때려 박는 패치를 작성했다.
왜 이렇게 하면 발열이 안 날까? 터너리 가중치 연산에서는 컴퓨터 연산 중 가장 전기를 많이 먹는 ‘곱셈’이 100% 증발하기 때문이다.
// [일반적인 양자화 추론]
// 가중치마다 비싼 부동소수점 곱셈-누산(MAC) 연산 발생 -> 발열 폭발!
acc += w[i] * x[i];
// [하다마드 터너리 연산]
// 가중치 w[i]가 오직 -1, 0, 1 셋 중 하나이므로 곱셈이 아예 없음
acc += x[i]; // w가 +1이면 그냥 덧셈
acc -= x[i]; // w가 -1이면 그냥 뺄셈
// w가 0이면 연산 자체를 건너뜀 (NOP)
곱셈-누산(MAC) 연산 횟수가 정확히 0회다. 오직 초경량 정수 덧셈과 뺄셈만 남는다. 발열을 팬으로 식힌 게 아니라, 열을 발생시키는 근원인 곱셈 연산 자체를 수학적으로 지워버린 것이다. 여기에 향후 안드로이드 Vulkan 컴퓨트 셰이더 가속까지 붙일 계획이라니 속도 개선 여지도 충분하다.
왜 여기에 주목해야 할까
5090 단종 소식으로 전 세계 로컬 AI 커뮤니티가 패닉에 빠진 날이었다. 엔비디아가 소비자용 그래픽카드를 죽이고 마진 높은 데이터센터로 칩을 돌린다는 분노부터, 이제 개인은 비싼 클라우드 API의 노예가 될 거라는 비관론까지 타임라인이 온통 우울했다.
그런 절망적인 날에 구형 폰 두 대로 27B를 돌린 고등학생의 글이 던진 파동은 남달랐다.
하드웨어 공급망이 가로막힌다면, 수학과 알고리즘이 새로운 우회로를 뚫어낼 수 있다는 살아있는 증거였기 때문이다. 비록 지금은 2.8 tok/s로 느릴지라도, PPL 14.26이라는 압도적인 지능 보존율은 이 알고리즘이 진짜배기임을 보여준다.
더 놀라운 건 작성자가 현직 연구원도 아니고 아직 고등학생이라는 사실이다(난 고딩 때 야자 째고 떡볶이 먹으러 다녔는데 대체 뭘 한 건지 자괴감이 든다…). 2분 45초짜리 데모 시연 영상도 노컷 원테이크로 시원하게 찍어 올렸고, 엔진 소스코드와 방법론을 깃허브에 전부 오픈소스로 풀었다.
정리
RTX 5090 단종과 안드로이드 폰 클러스터. 하루 사이에 나란히 터진 이 두 사건은 2026년 로컬 AI 생태계가 마주한 현실을 가장 드라마틱하게 보여준다.
한쪽에서는 자본과 공급망의 벽이 높아지지만, 다른 한쪽에서는 돈 대신 집념과 수학적 아이디어로 그 벽을 기어코 우회한다.
비싼 최신 GPU를 살 돈이 없다고 좌절할 필요는 없다. 14.05와 14.26 사이의 저 좁은 간격이 증명하듯, 진짜 기술의 진보는 장비의 가격표가 아니라 엔지니어의 상상력에서 피어나는 법이니까!