두 개의 GPU 사양서가 그를 속였다. 올바르게 읽는 방법은 다음과 같다.
요약
GPU 사양서의 TFLOPS 수치만으로는 실제 AI 성능을 예측할 수 없음을 경고합니다. AI 작업은 학습과 추론으로 나뉘며, 각 작업에 따라 연산량, 메모리 용량, 대역폭 등 핵심 지표가 미치는 영향이 다름을 설명합니다.
핵심 포인트
- TFLOPS는 학습 성능의 지표일 뿐, 추론 성능을 보장하지 않음
- AI 작업은 연산 집약적인 '학습'과 데이터 이동이 중요한 '추론'으로 구분됨
- 모델 실행을 위해서는 VRAM 용량이 필수적인 관문 역할을 함
- 메모리 대역폭은 가중치 이동 속도를 결정하는 핵심 요소임
더 높은 TFLOPS 수치는 더 빨라 보입니다. 더 비싼 카드는 더 많은 메모리를 가지고 있습니다. 하지만 그 중 어느 것이 사용자의 질문에 더 빠르게 답변할지는 그 무엇도 알려주지 않습니다. GPU 사양서에서 가장 큰 숫자는 실제 AI 성능을 거의 예측하지 못하는데, 그 이유는 AI가 단일 워크로드 (workload)가 아니기 때문입니다. AI는 두 가지이며, 이들은 서로 다른 부분에서 병목 현상이 발생합니다.
Ravi는 두 개의 GPU 사양서를 열어두고 있었지만, 두 사양 모두 그를 오도하고 있었습니다. 한 카드는 TFLOPS가 앞서서 더 빨라 보였습니다. 다른 카드는 더 많은 메모리와 더 높은 대역폭 (bandwidth)을 가졌고 가격도 더 비쌌습니다. 그는 사용자에게 언어 모델 (language model)을 제공하는 앱을 구축하고 있었는데, 수치만 보고는 어떤 카드가 프롬프트 (prompt)에 더 빠르게 답변할지 알 수 없었습니다. 그만은 혼자가 아니며, 답은 직관에 반합니다. 헤드라인에 나오는 연산 수치는 최적화해야 할 잘못된 대상이며, TFLOPS가 더 낮은 카드가 종종 승리합니다.
다음은 AI를 위한 GPU를 비교하는 방법, 이를 결정하는 네 가지 숫자, 왜 더 느려 보이는 카드가 승리하는지를 설명하는 하나의 수학적 원리, 그리고 사양서를 보며 오후 내내 추측하는 대신 약 1분 만에 모든 대결을 결판내는 방법입니다.
AI는 하나가 아닌 두 가지 작업이다
AI 모델은 가중치 (weights)라고 불리는 거대한 숫자 더미가 레이어 (layers) 형태로 배열된 것입니다. 모델을 실행한다는 것은 입력을 해당 가중치와 반복해서 곱하는 것을 의미하며, 이것이 바로 수천 개의 병렬 코어 (parallel cores)를 가진 GPU가 몇 개의 빠른 코어를 가진 CPU를 압도하는 이유입니다. 현대의 GPU는 이러한 행렬 연산 (matrix math)을 위해 특별히 설계된 텐서 코어 (Tensor Cores)를 추가하며, AI 성능 수치를 볼 때 그 작업은 거의 항상 텐서 코어가 수행합니다.
모든 비교는 하나의 갈림길에 달려 있습니다. AI 작업에는 두 가지가 있으며, 이들은 GPU에 서로 다른 부하를 줍니다. 학습 (Training)은 데이터를 모델에 통과시키고 가중치를 조정함으로써 며칠 또는 몇 주 동안 모델을 가르치는 과정이며, 처음부터 끝까지 연산 집약적 (math-heavy)입니다. 추론 (Inference)은 완성된 모델을 사용하여 요청에 답변하는 것으로, 누군가 챗봇 (chatbot)에 프롬프트를 입력할 때마다 하루에 수백만 번 발생합니다. 대규모 환경에서는 추론이 대부분의 GPU 시간과 비용이 투입되는 영역입니다. 이들은 서로 다른 작업이기 때문에 카드의 서로 다른 부분에 의해 제한을 받습니다. 이를 놓친다면 당신이 하는 모든 비교는 틀린 것이 됩니다.
결정적인 네 가지 수치
마케팅 문구는 무시하십시오. AI를 위한 GPU의 적합성은 측정 가능한 네 가지 요소로 요약됩니다. 훌륭한 벤치마크(Benchmark)는 이 네 가지를 모두 보고합니다. 왜냐하면 어느 하나만으로는 오해를 불러일으킬 수 있기 때문입니다.
TFLOPS 단위의 연산량(Compute)은 Tensor Core가 곱셈을 수행하는 원시 속도입니다. 연산량이 높을수록 학습(Training)을 더 빠르게 완료합니다. 이는 사양서(Spec sheet)에서 가장 먼저 내세우는 수치이며, 가장 자주 과하게 평가되는 수치이기도 합니다. VRAM의 기가바이트(GB) 단위인 메모리 용량(Memory capacity)은 모델이 카드에 들어갈 수 있는지 여부를 결정합니다. 용량이 맞지 않는 모델은 실행에 실패하거나 시스템 메모리로 넘어가게 되는데, 이때 성능이 급격히 저하되므로 용량은 필수적인 관문(Hard gate)입니다. 초당 테라바이트(TB/s) 단위인 메모리 대역폭(Memory bandwidth)은 가중치(Weights)가 메모리에서 코어로 얼마나 빨리 이동하는지를 나타내며, 구매자들이 가장 자주 간과하지만 추론(Inference) 속도를 조용히 결정하는 수치입니다. FP16, FP8, FP4와 같은 정밀도 지원(Precision support)은 하드웨어가 해당 포맷을 지원할 경우, 각 가중치를 더 적은 비트(Bit)로 표현하여 모델 크기를 줄이고 처리량(Throughput)을 대략 두 배로 늘릴 수 있는지 여부를 결정합니다. Blackwell의 네이티브 FP4가 이전 세대 카드들은 사용할 수 없는 대표적인 예시입니다.
가장 큰 TFLOPS 수치가 거짓말을 하는 이유
이 부분이 거의 모든 사람을 혼란에 빠뜨리는 지점입니다. 공장을 상상해 보십시오. 코어(Cores)는 제품을 엄청나게 빠르게 조립하는 노동자입니다. 가중치(Weights)는 창고에 있는 원자재이며, 트럭인 메모리 버스(Memory bus)를 통해 전달됩니다. 학습(Training) 중에는 매 전달마다 수행해야 할 수학 연산이 매우 많아서 노동자들이 계속 바쁘게 움직입니다. 따라서 노동자가 많을수록, 즉 TFLOPS가 높을수록 더 많은 산출물이 나옵니다. 반면 추론(Inference), 특히 텍스트를 토큰(Token) 단위로 생성할 때는 전달당 수학 연산량이 매우 적습니다. GPU는 단 하나의 토큰을 생성하기 위해 모델 전체의 가중치를 읽어 들인 후, 약간의 산술 연산을 수행하고 다음 트럭이 오기를 기다립니다. 노동자들은 놀고 있는 것입니다. 공장은 노동자 수에 제한을 받는 것이 아니라, 배달 속도에 제한을 받습니다.
이로부터 추론할 수 있는 정밀한 규칙이 도출됩니다. 토큰 생성의 경우, 초당 토큰 수(Tokens per second)는 대략 메모리 대역폭을 메모리에 있는 모델 크기로 나눈 값과 같습니다. 여기에 연산량(Compute)을 더해도 결과는 변하지 않습니다. 하지만 대역폭(Bandwidth)을 더하면 속도는 빨라집니다.
이것은 업계에서 가장 즐겨 사용하는 사례를 설명해 줍니다. H200은 H100과 동일한 연산 다이(Compute die)를 사용하므로 TFLOPS(테라플롭스)는 동일하지만, H200은 대규모 모델을 약 40% 더 빠르게 서빙합니다. 바뀐 유일한 점은 메모리 대역폭(Memory bandwidth)이 초당 3.35테라바이트에서 4.8테라바이트로 증가했다는 것입니다. 연산량(Compute) 기준으로 순위를 매기면 두 제품은 동일해 보입니다. 하지만 실제 운영(Production) 환경에서는 전혀 그렇지 않습니다. 게다가 이는 복합적으로 작용합니다. 대화의 실행 메모리인 KV 캐시(KV cache)는 토큰과 사용자가 늘어날수록 함께 커지기 때문에, 프롬프트가 길어지고 트래픽이 많아질수록 워크로드(Workload)는 메모리 대역폭에 더 제한을 받는 메모리 바운드(Memory-bound) 상태가 됩니다.
실제 작업을 측정하라, 사양서를 믿지 마라
원시 사양(Raw specs)이 오해를 불러일으킨다면, 해결책은 실제 작업을 측정하는 것입니다. 업계 표준은 MLPerf입니다. 이는 모든 가속기에서 동일한 모델을 실행하여 결과를 비교할 수 있도록 하는 제품군이며, 추론(Inference) 테스트는 2026년까지 갱신될 예정입니다.
이를 활용 가능하게 만드는 실용적인 도구가 있습니다. MillionMiner GPU 및 AI 벤치마크는 모든 카드를 VRAM, 연산량(Compute), 학습 처리량(Training throughput)과 함께 RTX 3090을 100으로 정규화한 AI 추론 지수(AI Inference Index)로 점수를 매깁니다. 이 정규화된 지수가 핵심적인 움직임입니다. 사용자가 머릿속으로 테라바이트(Terabytes)와 테라플롭스(Teraflops)를 저울질하게 만드는 대신, 실제 추론 성능을 하나의 상대적인 숫자로 표현합니다. 따라서 400점을 기록한 카드는 기준점인 3090보다 약 4배 더 많은 추론 작업을 수행합니다. 처리량이 아닌 용량이 결정 요인이 되는 경우를 위해 용량(Capacity)과 연산량(Compute) 정보도 함께 제공됩니다. 이는 GPU가 실제로 작동하는 방식에 맞춰 교정된 사양서입니다.
워크로드에 맞춰 벤치마크를 읽어라
적절한 GPU는 전적으로 작업의 성격에 달려 있습니다. 사용자에게 언어 모델을 서빙하는 것은 메모리 바운드(Memory-bound) 작업입니다. 따라서 추론 지수(Inference index)와 VRAM을 우선적으로 고려하여 모델과 KV 캐시가 들어갈 수 있는지 확인한 다음, 감당 가능한 범위 내에서 가장 높은 처리량(Throughput)을 선택하십시오. 학습(Training) 또는 미세 조정(Fine-tuning)은 연산 바운드(Compute-bound) 작업입니다. TFLOPS와 학습 처리량(Training throughput)을 우선적으로 고려해야 하며, 작업이 여러 개의 GPU에 걸쳐 있다면 인터커넥트(Interconnect)도 확인해야 합니다. NVLink는 카드 간에 초당 약 900기가바이트의 속도로 데이터를 이동시키지만, PCIe는 모델을 분할하는 순간 병목 현상(Bottleneck)이 발생하기 때문입니다.
하나의 카드에서 대규모 모델을 실행할 때는 용량(Capacity)이 관건이 됩니다. 70B 모델을 Full Precision(전정밀도)으로 실행하려면 약 140GB가 필요한데, 이는 속도가 중요해지기도 전에 대부분의 카드를 탈락시킵니다. 프로토타이핑(Prototyping)이나 예산이 제한적인 작업에서는 RTX 5090과 같은 소비자용 카드가 강력한 가성비를 제공하지만, 지표상으로 해당 카드의 한계를 넘어서는 시점이 오게 됩니다.
그다음 두 카드를 비교하는 데는 약 1분 정도가 소요됩니다. 먼저 작업 부하(Workload)가 학습(Training)인지 추론(Inference)인지, 모델 크기는 얼마인지, 단일 카드 사용 여부를 결정하십시오. 그래야 어떤 열(Column)을 읽어야 할지 결정되기 때문입니다. 벤치마크 도구를 열고, 임의의 GPU 두 개를 선택하여 나란히 배치하십시오.
*작업에 맞는 열만 읽고 나머지는 무시하십시오: *
서빙(Serving)을 위한 추론 지표(Inference index), 학습을 위한 TFLOPS 및 학습 처리량(Training throughput), 용량 적합성을 위한 VRAM을 확인하십시오. 모델이 들어가는지 확인(Sanity-check)하고 성능을 가격, 전력, 냉각 성능과 비교하여 무게를 다십시오. 그런 다음 카드의 제품 페이지에서 구매하거나, 하드웨어를 직접 소유하고 냉각하는 것을 원치 않는다면 호스팅(Hosting)을 선택하십시오. 예산 내에서의 선택과 플래그십 모델들의 비교와 같은 더 넓은 질문들은 'AI용 GPU 선택 가이드'와 'H100 vs H200 vs B200 비교'에서 다룹니다.
비트코인 채굴자들도 똑같은 함정에 빠집니다
이 패턴이 익숙하게 느껴진다면, 그것은 당연한 것입니다. Ravi가 TFLOPS와 관련하여 저지를 뻔했던 실수는 구매자들이 채굴 하드웨어와 해시레이트(Hashrate)를 다룰 때 저지르는 실수와 정확히 일치합니다. 가장 높은 테라해시(Terahash) 숫자가 반드시 가장 수익성이 높은 채굴기를 의미하지는 않습니다. 왜냐하면 수익은 출력값에서 소모되는 전력을 뺀 값이며, 승자를 결정하는 것은 원시 해시레이트(Raw hashrate)가 아닌 효율성(Efficiency)이기 때문입니다. 해결책은 동일합니다. 헤드라인 사양을 읽는 것을 멈추고 실제 결과를 측정하십시오. 당사의 채굴 수익 계산기(Mining profit calculator)는 벤치마크가 GPU를 박스에 적힌 숫자가 아닌 실제 추론 성능으로 순위를 매기는 것과 마찬가지로, 귀하의 전기 요율에 따른 실제 일일 수익을 기준으로 장비를 분류합니다. 하나의 교훈, 두 종류의 하드웨어: 사양서의 가장 큰 숫자는 마케팅이며, 실제로 돈을 벌어다 주는 지표는 직접 측정해야 하는 지표입니다.
결론 (The bottom line)
Ravi는 모델을 서빙(serving)하고 있었기에, TFLOPS 수치를 읽는 것을 멈추고 추론 지표(inference index)와 VRAM을 기준으로 정렬했습니다. 헤드라인 연산 성능(headline compute)이 더 낮은 카드가 두 지표 모두에서 승리했으며, 그의 모델에 적합했고, 더 적은 비용으로 사용자에게 더 빠르게 응답했습니다. 사양서(spec sheet)대로만 했다면 그는 잘못된 선택을 했을 것입니다.
AI를 위한 GPU를 비교하는 것은 가장 큰 숫자를 찾는 것이 아닙니다. 자신의 워크로드(workload)가 어떤 수치에 의존하는지 파악한 다음, 데이터시트(datasheet)를 신뢰하는 대신 실제 성능을 측정하는 것이 핵심입니다. 작업의 종류를 정의하고, 올바른 열(column)을 읽으면 선택은 명확해집니다. 후보군에 있는 제품들의 수치를 확인할 준비가 되었다면, 벤치마크 도구(benchmark tool)를 실행하고 AI 하드웨어 카탈로그에서 카드를 살펴보십시오. 만약 전력과 냉각이 실제 제약 사항이라면, 그것은 실리콘(silicon)의 문제가 아니라 사이트(site)의 문제이며, 이는 MillionMiner가 해결하기 위해 만들어졌습니다.
RTX 3090을 100으로 정규화한 78개 GPU 중 임의의 두 GPU에 대한 실제 추론 수치를 확인하십시오: millionminer.com/gpu-ai-benchmarks.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기