로컬 LLM 모델 100GB, NVMe SSD 추천은 TLC와 QLC에서 갈린다

책상 위에 나란히 놓인 NVMe SSD 두 개와 알루미늄 방열판, 로컬 LLM NVMe SSD 추천 비교

로컬 LLM용 NVMe SSD 추천은 가장 빠른 드라이브에서 시작하지 않는다. 4비트로 줄여도 70B급 모델은 35GB, 122B급 MoE는 69.1GiB, 145B는 72.5GB다. 모델 하나가 100GB를 넘기 시작하면 SSD는 용량만 보고 고를 수 없다. 같은 2TB라도 TLC와 DRAM을 갖춘 드라이브와 QLC에 DRAM이 없는 드라이브가 로드 대기와 추론 중 페이지 읽기에서 갈린다. 모델 파일 크기부터 세고, 공식 스펙과 판매가로 세 드라이브를 같은 조건에 놓았다.

NVMe SSD 추천, 먼저 모델 파일 크기부터 센다

모델 파일 크기는 파라미터 수와 양자화 비트로 정해진다. 4비트는 파라미터당 0.5바이트, 8비트는 1바이트다. 70B를 4비트로 줄이면 35GB, 8비트로 두면 70GB다. 여기에 KV 캐시와 런타임 몫이 더 붙는다.

이 계산을 2TB 드라이브에 대 보면 숫자가 금방 무거워진다. 8비트 145B는 145GB로, 2TB의 7%를 모델 하나가 먹는다. 같은 모델을 4비트로 내리면 72.5GB다.

모델4비트 파일8비트 파일2TB에 4비트로
32B 밀집16GB32GB약 125개
70B 밀집35GB70GB약 57개
122B MoE (Q4_K_M 실측)69.1GiB약 138GiB(계산)26개
145B72.5GB145GB약 27개

표는 표기 용량이다. 2TB 드라이브에서 실제로 쓸 수 있는 공간은 그보다 적고, 여기에 운영체제와 이미지 생성 모델, 데이터셋이 같이 들어간다. 모델을 두세 개만 굴리고 자주 지우는 편이면 2TB로 충분하다. 100GB급을 여러 개 남겨 두거나 파인튜닝 체크포인트를 쌓으면 4TB가 필요해진다.

M.2 NVMe SSD의 금색 커넥터와 키 홈 접사

같은 2TB, TLC와 QLC가 다른 세 가지

세 드라이브 모두 PCIe 4.0 x4, M.2 2280이다. 갈리는 것은 낸드 종류와 캐시다. 990 PRO와 SN850X는 TLC에 2GB DRAM을 달았고, P3 Plus는 QLC에 DRAM이 없다. 컨트롤러가 매핑 테이블을 시스템 메모리에서 가져오는 방식이다.

드라이브낸드DRAM순차 읽기순차 쓰기랜덤 읽기(QD32)TBW2TB 판매가
삼성 990 PRO 2TBTLC2GB7,450MB/s6,900MB/s1,400K IOPS1,200TB875,000원
WD_BLACK SN850X 2TB 히트싱크TLC2GB7,300MB/s6,600MB/s1,200K IOPS1,200TB843,380원
Crucial P3 Plus 2TBQLC없음5,000MB/s4,200MB/s680K IOPS440TB743,500원

파일 하나를 처음부터 끝까지 읽는 순차 작업에서는 DRAM 유무가 잘 드러나지 않는다. 문제는 작은 블록을 여러 파일에서 번갈아 읽을 때다. QD32 기준 랜덤 읽기 1,400K와 680K IOPS 차이가 이런 장면에서 대기 시간 차이로 이어질 수 있다.

TBW는 수명 표기다. P3 Plus가 440TB로 세 드라이브 중 가장 낮다. 모델 로드는 읽기 위주라 TBW가 소진되는 속도는 상대적으로 느린 편이다. 대신 100GB짜리 모델을 통째로 내려받고 복사하는 긴 쓰기에서 QLC가 표기 속도를 유지하지 못하는 구간이 있을 수 있다. 모델을 자주 갈아 끼우는 사람에게 먼저 체감되는 지점이 이쪽이다.

뚜껑을 연 데스크톱 케이스 안쪽의 빈 M.2 슬롯과 드라이버

100GB 로드 시간, 계산하면 13초와 20초

표기 순차 읽기로 계산한 값이다. 100GB 파일을 990 PRO로 읽으면 13.4초, SN850X는 13.7초, P3 Plus는 20.0초다. SATA 드라이브(560MB/s)로는 178.6초가 걸린다. 115GB 모델이면 15.4초, 15.8초, 23.0초, 205.4초로 벌어진다. 세 드라이브 사이의 차이는 7초 남짓, SATA와의 차이는 3분 가까이다.

실제 로드는 이 계산보다 길다. 파일을 읽는 동안 압축 해제와 메모리 복사, 그래픽카드 전송이 같이 일어나기 때문이다. 블로거가 7.6GB 모델로 공개한 실측에서도 저장장치 직접 읽기는 2.26배 빨랐지만, 모델 로드 시간은 99.3초에서 77.0초로 22.5% 줄어드는 데 그쳤다. 비교 대상은 USB 10Gbps 외장 케이스에 넣은 NVMe와 SATA 하드디스크였다.

그래서 저장장치 등급을 한 단계 올려 아끼는 시간은 생각보다 작다. 하드디스크에서 NVMe로 넘어가는 첫 점프는 크지만, 그다음 등급부터는 표기 속도 비율만큼 로드가 줄지 않는다.

저녁 조명 아래 책상 위 미니PC 옆에 놓인 M.2 SSD

추론 중에 SSD를 다시 읽는 구성이면 랜덤 읽기가 갈린다

가중치를 전부 메모리에 올리는 구성에서 SSD는 모델을 올릴 때만 쓰인다. 추론이 시작되면 가중치는 메모리에 있고, 토큰 속도는 그래픽카드와 메모리 대역폭이 정한다. 이 경우 비싼 드라이브를 사는 이유는 로드 몇 초를 줄이는 것뿐이다.

구성이 커지면 계산이 달라진다. 145B 모델을 29GB로 돌리는 구성은 자주 쓰는 전문가만 그래픽카드 메모리에 두고, 약 40GB 규모의 전문가 라이브러리는 시스템 메모리에, 약 48GB 어휘 데이터는 SSD에 둔다. 이때 SSD는 한 번 읽고 끝나는 저장소가 아니라 추론 중에도 계속 불리는 저장소가 된다. 이런 구성에서는 순차 속도보다 랜덤 읽기와 DRAM 유무가 대기 시간을 좌우한다.

반대로 32B 이하 모델을 그래픽카드 메모리에 통째로 올려 쓰는 구성이라면 DRAM을 갖춘 TLC 드라이브에서 체감 차이가 작다. 모델을 올리고 나면 드라이브는 놀고 있기 때문이다.

화면을 끈 노트북 옆에 놓인 NVMe 외장 케이스와 케이블

그래서 어떤 조합이 남는가

판단은 세 줄로 줄어든다. 2TB TLC에 DRAM이 있는 드라이브가 기본값이다. 100GB급 모델을 여러 개 남기거나 파인튜닝 산출물을 쌓는다면 4TB로 간다. 4TB면 100GB 모델을 40개까지 둘 수 있다.

QLC는 값 차이가 클 때만 고를 이유가 있다. 표의 P3 Plus는 743,500원, SN850X는 843,380원으로 10만원 차이다. 이 정도 차이라면 랜덤 읽기가 1.8배이고 수명 표기가 2.7배인 쪽을 고르는 편이 낫다. 반대로 모델을 하나만 올려 두고 오래 쓰는 구성이라면 비싼 드라이브에 돈을 더 넣을 이유가 없다. 토큰 속도를 바꾸는 것은 그래픽카드 메모리다.

모델 보관용 드라이브는 용량을 먼저 채우고, 남는 예산을 TLC와 DRAM에 쓴다. 다음 드라이브를 살 때도 같은 순서로 보면 된다.

삼성전자 990 PRO PCIe 4.0 NVMe 2TB + M.2 SSD 고정용 나사 2개

삼성전자 990 PRO PCIe 4.0 NVMe 2TB + M.2 SSD 고정용 나사 2개

로켓배송으로 바로 받기
WD BLACK SN850X 2TB 히트싱크 M.2 NVMe SSD (GEN4/PS5 호환)

WD BLACK SN850X 2TB 히트싱크 M.2 NVMe SSD (GEN4/PS5 호환)

로켓배송으로 바로 받기