1조 파라미터 모델을 램 29GB에 욱여넣었더니 벌어진 일
로컬에서 대형 모델을 돌려본 분이라면 한 번쯤 봤을 장면이 있습니다. 누군가 조촐한 사양의 PC에서 1조 파라미터급 모델을 띄운 스크린샷을 올리고 댓글창이 술렁이는 겁니다. 그런데 자세히 보면 출력 속도가 초당 0.5토큰입니다. 한 문장 뽑는 데 1분씩 걸린다는 뜻인데요. 이걸 두고 “드디어 로컬 AI 시대"라는 반응과 “그냥 재밌는 묘기"라는 반응이 갈립니다. 어느 쪽이 맞을까요.
먼저 솔직하게 말씀드릴 게 있습니다. 이번 주제는 커뮤니티 데이터가 거의 잡히지 않았습니다. 최근 30일 기준 관련 스레드가 확인되지 않아서 이 글은 실시간 반응 정리보다는 기술 구조와 그동안 반복돼온 논쟁의 맥락을 짚는 쪽에 가깝습니다. 특정 모델의 세부 스펙보다 “왜 이런 게 가능한가”와 “그래서 쓸모가 있나” 쪽을 주로 다룹니다.
1조 파라미터가 29GB에 들어간다는 게 무슨 뜻인가
먼저 산수부터 해보죠. 파라미터 1조 개를 원본 정밀도(FP16, 파라미터당 2바이트)로 저장하면 2TB가 필요합니다. 개인용 PC 램은커녕 고급 서버 한 대로도 감당이 안 되는 크기죠. 그런데 29GB에 들어갔다는 건 중간에 두 가지 마법이 개입했다는 뜻입니다.
첫 번째는 양자화입니다. 파라미터 하나를 16비트로 저장하지 말고 4비트, 2비트, 심하면 1.58비트까지 줄이는 기법입니다. 사진을 JPEG로 압축하는 것과 비슷한데요. 화질은 조금 떨어지지만 파일 크기는 확 줄어듭니다. 2비트까지 밀어붙이면 2TB가 250GB 수준으로 내려옵니다. 그래도 29GB는 아니죠.
두 번째가 디스크 오프로딩입니다. 모델 전체를 램에 올리지 않고 SSD에 놔둔 채 지금 당장 필요한 부분만 램으로 불러오는 방식입니다. 정확히 말하면 29GB는 “모델 크기"가 아니라 “동시에 램에 상주하는 최대 크기"입니다. 나머지는 계속 디스크에서 왔다 갔다 합니다. 이 구분이 중요합니다. 모델이 작아진 게 아니라 모델을 쪼개서 순서대로 들이밀고 있는 겁니다.
MoE 구조가 없었으면 불가능했을 이야기
여기엔 숨은 공신이 하나 더 있습니다. 요즘 대형 오픈웨이트 모델은 대부분 MoE(Mixture of Experts) 구조를 씁니다. 전체 파라미터는 1조 개지만 토큰 하나를 처리할 때 실제로 활성화되는 건 그중 일부, 보통 3~5% 정도입니다.
식당에 비유하면 이렇습니다. 주방에 요리사 100명이 대기 중이지만 김치찌개 주문 하나 들어왔을 때 실제로 움직이는 사람은 3명입니다. 나머지 97명은 자리에 앉아 있습니다. 그러면 굳이 100명을 전부 주방에 세워둘 필요가 없죠. 대기실에 두었다가 필요할 때만 부르면 됩니다. 여기서 주방이 램이고 대기실이 SSD입니다.
이 구조 덕분에 디스크 오프로딩이 현실적인 선택지가 됩니다. 밀집(dense) 모델이었다면 토큰 하나마다 전체 파라미터를 다 읽어야 하니 디스크에서 2TB를 읽고 또 읽는 짓을 반복해야 합니다. 그건 느린 게 아니라 아예 불가능에 가깝습니다.
그런데 왜 하필 초당 0.5토큰인가
병목은 연산이 아닙니다. 대역폭입니다.
현대 GPU의 메모리 대역폭은 초당 수백 GB에서 1TB를 넘나듭니다. 고성능 NVMe SSD는 잘 나와도 초당 7GB 언저리고요. 차이가 100배 이상입니다. GPU가 계산을 아무리 빨리 해도 다음에 필요한 전문가(expert) 가중치가 SSD에서 도착할 때까지 놀고 있어야 합니다. 이걸 흔히 메모리 월이라고 부릅니다. 반도체 공정이 아무리 좋아져도 데이터를 옮기는 통로가 안 넓어지면 성능이 안 나오는 현상입니다.
체감으로 옮겨보면 이렇습니다. 한국어 기준 500자 정도의 답변이면 대략 400~500토큰입니다. 그러면 15분 안팎이 걸립니다. 코드를 짜달라고 하면 커피 한 잔 마시고 와야 합니다. 대화를 주고받는 건 사실상 포기해야 하고요. 추론 모델이라면 생각 과정에서만 수천 토큰을 태우니 한 시간이 넘어갈 수도 있습니다.
여기에 하나 더 있습니다. SSD 수명입니다. 디스크 오프로딩은 읽기 위주라 쓰기 마모가 심하진 않지만 컨텍스트가 길어지고 스왑이 개입하기 시작하면 이야기가 달라집니다. 몇 달째 이런 식으로 굴렸다면 드라이브 상태를 한 번쯤 확인해볼 만합니다.
그럼에도 이게 의미 있는 이유
속도만 보면 실용성이 없어 보입니다. 그런데 이 실험이 계속 화제가 되는 데는 이유가 있습니다.
접근 가능성 자체가 성과입니다. “이 모델은 H100 8장이 있어야 돌아갑니다"와 “느리긴 해도 게이밍 PC에서 돌아갑니다"는 완전히 다른 문장입니다. 뒤쪽은 개인 연구자나 학생이 프론티어급 오픈웨이트 모델이 실제로 어떻게 도는지 직접 뜯어볼 수 있다는 뜻입니다. 벤치마크 점수를 읽는 것과 내 컴퓨터에서 직접 돌려보는 것은 이해의 깊이가 다릅니다.
배치 처리에서는 속도가 덜 중요합니다. 실시간 대화는 못 하지만 밤새 문서 100건을 분류하거나 요약하는 작업이라면 어떨까요. 8시간 자는 동안 1만 4000토큰을 처리할 수 있습니다. 클라우드 API 비용이 부담스럽고 데이터를 외부로 못 보내는 상황이라면 느린 로컬 모델이 유일한 답일 수 있습니다. 의료나 법률 데이터를 다루는 곳에서 특히 그렇습니다.
이 병목은 풀리는 방향입니다. DDR5 기반 시스템의 대역폭은 계속 오르고 있고 통합 메모리 구조를 쓰는 애플 실리콘 계열은 이미 램 용량 자체를 무기로 삼습니다. PCIe 5.0 SSD도 보급되는 중이고요. 지금 0.5토큰인 게 2년 뒤에 5토큰이 되면 실용성 논쟁의 결론이 뒤집힐 수 있습니다.
그래서 어떻게 봐야 할까
이건 실용 도구가 아니라 가능성 증명에 가깝습니다. 지금 당장 업무에 쓸 수 있냐고 물으면 대부분은 아니라고 답해야 합니다. 32GB 램에 30B급 모델을 4비트로 올려 초당 20토큰을 뽑는 쪽이 훨씬 현실적인 선택입니다.
다만 어느 쪽으로 가고 있는지는 봐둘 만합니다. 몇 년 전만 해도 70B 모델을 개인 PC에서 돌린다는 건 농담 같은 이야기였는데요. 지금은 평범한 노트북에서도 됩니다. 1조 파라미터도 같은 길을 갈 수 있습니다. 지금의 0.5토큰은 그 길의 출발점을 찍어둔 표식입니다.
여러분이라면 클라우드에서 초당 100토큰으로 즉시 답을 받는 것과, 내 컴퓨터에서 15분 기다리되 데이터가 한 발짝도 밖으로 안 나가는 것 중 어느 쪽을 고르시겠습니까. 답이 상황에 따라 갈린다면 그게 로컬 LLM 판이 계속 굴러가는 이유일 겁니다.
댓글
댓글을 불러오는 중...