Day 2/365 — 오늘 GPU 내부를 들여다보다
요약
본 글은 GPU 내부 구조를 깊이 있게 분석하며, GPCs, TPCs, SMs 등의 계층적 아키텍처를 설명합니다. 특히 CUDA Cores, Tensor Cores(행렬 연산 특화), RT Cores(레이 트레이싱 특화)의 역할을 비교하고, AI 워크로드에 필수적인 Tensor Core와 고대역폭 메모리(HBM4)의 중요성을 강조합니다.
핵심 포인트
- GPU는 GPCs-TPCs-SMs로 구성된 복잡한 계층적 아키텍처를 가집니다.
- Tensor Cores는 AI 워크로드에 핵심적인 행렬 연산 처리에 특화되어 있습니다.
- 최신 GPU(Rubin)는 3360억 트랜지스터, HBM4 등 압도적인 스펙을 자랑합니다.
- 아무리 강력한 컴퓨팅 자원도 메모리 대역폭이 뒷받침되지 않으면 성능을 발휘할 수 없습니다.
Day 2/365 — I went inside the GPU today.
솔직히 말해서… 제가 열면 안 되는 문을 연 것 같아요. 😂, 어제 너무 많은 미로(rabbit holes) 속으로 들어갔는데 실제로 즐거웠어요. (여러분은 놓치고 있네요 😉)
어제는 GPU가 왜 존재하는지 이해하는 것이었습니다.
오늘은 다음을 이해하고 싶었어요:
“좋아, 근데 이 안에 실제로는 뭐가 들어가 있는 거지?”
그리고 바로 그 지점에서 GPU 아키텍처가 엄청나게 복잡해집니다.
NVIDIA GPU를 거대한 회사라고 생각해 보세요.
맨 위에는 Graphics Processing Clusters (GPCs)가 있습니다.
GPCs 안에는 Texture Processing Clusters (TPCs)가 있습니다.
그리고 TPCs 안에는요?
Streaming Multiprocessors (SMs).
SM은 기본적으로 실제 계산이 일어나는 독립된 작업장입니다.
그리고 이 작업장 안에서는 상황이 훨씬 더 흥미로워집니다:
• CUDA Cores
• Tensor Cores
• RT Cores
• Warp Schedulers
• Registers
• Shared Memory / L1 Cache
• Texture units and other supporting hardware
그래서 저는 이렇게 생각하기 시작했습니다:
CUDA Cores = 일반적인 작업자들.
Tensor Cores = 전문가들.
RT Cores = 매우 특정한 작업을 하는 사람들.😂
CUDA Cores는 범용 산술 연산(general-purpose arithmetic operations)을 처리합니다.
Tensor Cores는 행렬 연산(matrix operations)에 특화되어 있는데, 이는 AI 워크로드에 매우 중요합니다.
그리고 RT Cores는 레이 트레이싱(ray tracing)에 특화되어 있습니다. 3D 장면에서 빛이 객체와 어떻게 상호작용하는지 계산하는 것 같은 작업입니다.
그러다가 저는 Tensor Cores에 막혔습니다.
왜냐하면 이곳에서 AI에게 정말로 흥미로운 일들이 시작되기 때문입니다.
신경망(Neural networks)은 기본적으로 행렬 곱셈(matrix multiplication)에 빠져 허우적거립니다.
그리고 NVIDIA는 여러 세대에 걸쳐 Tensor Cores를 이러한 워크로드에 점점 더 전문화시켜 왔습니다.
Volta → Turing → Ampere → Hopper → Blackwell → Rubin.
그리고 Rubin에서 제 뇌가 버퍼링을 시작했습니다. 😂
NVIDIA의 Rubin GPU는 다음과 같습니다:
3360억 개의 트랜지스터. 🤯
224개의 Streaming Multiprocessors. 🤯
896개의 Tensor Cores. 🤯
288GB의 HBM4. 🤯
최대 22 TB/s의 메모리 대역폭. 🤯
테라바이트/초(TERABYTES/Per second). (여러분은 이게 얼마나 미친 건지 계산하지 않는 것 같아요!!!)
이 지점에 이르러서 저는 공부를 멈추고 숫자들을 응시하기 시작했습니다.
😂
하지만 제가 더 흥미롭게 발견한 부분은 다음과 같습니다:
컴퓨팅(Compute) 자체는 충분히 빠르게 데이터를 공급받지 못하면 쓸모가 없습니다.
아무리 강력한 Tensor Core들이 준비되어 있어도…
데이터가 충분히 빨리 도착하지 않으면, 값비싼 컴퓨팅 자원들은 기다리며 놀게 됩니다.
이것이 메모리 아키텍처(memory architecture)가 왜 그렇게 중요한지를 보여줍니다.
Rubin은 자체 컴퓨팅에 고대역폭 HBM4를 결합하고 있으며, NVIDIA는 이 GPU가 최대 288GB의 HBM4를 갖추고 최대 22 TB/s의 대역폭을 제공할 수 있다고 말합니다.
그리고 TMA(Tensor Memory Accelerator)도 있습니다.
TMA는 Rubin에 새로운 것이 아닙니다. Hopper와 함께 도입되었습니다.
이것의 역할은 전역 메모리(global memory)와 공유 메모리(shared memory) 사이에서 다차원 데이터 블록을 이동하는 것을 더 효율적으로 만드는 것입니다. 동시에 이러한 데이터 이동/주소 계산 작업 일부를 SM의 일반 명령어 파이프라인에서 분리합니다.
그래서 오늘 저의 사고 모델은 다음과 같이 바뀌었습니다:
GPU 아키텍처는 단순히 컴퓨팅 능력을 많이 갖추는 것에 관한 것이 아닙니다.
그것은 바로:
컴퓨팅 + 메모리 + 데이터 이동 + 스케줄링
이 모든 것이 함께 작동하는 것입니다.
그리고 저는 AI 인프라가 왜 단순히 다음과 같은 것보다 훨씬 더 복잡한지 이해하기 시작했습니다:
“그냥 GPU를 주세요.”😂
Day 2 완료.
내일은 Tensor Core에 대해 더 깊이 파고들 예정입니다.
왜냐하면 제가 고통받는 것을 즐기는 것 같습니다.
#GPU #AIInfrastructure #CUDA #NVIDIA #MLOps #DevOps #LearningInPublic
[image: https://pbs.twimg.com/media/HTdLrdhW0AA2z6h.jpg
AI 자동 생성 콘텐츠
본 콘텐츠는 X GPU/AI 하드웨어의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기