다섯 살도 알 수 있게 · 시스템SW
GPU/GPGPU가 뭐예요?
GPU와 GPGPU를, 똑같은 간단한 일을 한번에 나눠 하는 보조 정비팀 이야기로 풀어봤어요.
똑같은 타이어 점검이 산더미처럼 쌓여요.반장(CPU)은 손이 적어서 한 번에 몇 대밖에 못 봐요.
더 뛰어난 정비사 한 명을 데려와도 한 번에 한 대씩인 건 같아요.쌓인 점검을 빨리 끝내려면 뛰어난 한 명보다 많은 손이 필요해요.
GPU = 수백 명이 똑같은 간단한 일을 나눠 하는 보조 정비팀이에요.보조 정비사 한 명은 단순한 일만 하지만, 다 같이 움직이면 전체 점검이 훨씬 빨리 끝나요.
코어 수백~수천 개일하는 손이 그만큼 많아요
SIMD모두에게 같은 동작을 동시에 시켜요
처리량 우선복잡한 일 하나보다 단순한 일 여럿을 많이 끝내요
GPGPU원래 그림용 보조팀을 계산에도 써요
CPU와 GPU는 잘하는 일이 달라요.GPU는 단순한 일을 '많이 동시에' 하는 데 강해요.
GPU는 복잡하고 판단이 갈리는 일에는 안 맞아요.GPU는 CPU를 대신하지 않아요 — 서로 다른 일을 나눠 맡아요.
한 줄로
GPU = 똑같이 단순한 일을 수백~수천 개의 작은 손이 한번에 나눠 처리하는 보조 정비팀. GPGPU는 이 팀을 그림 작업 말고 일반 계산에도 쓰는 것.
GPU(Graphics Processing Unit)는 수많은 단순 코어로 동일 연산을 여러 데이터에 동시에 적용하는 SIMD(Single Instruction, Multiple Data) 구조예요. 원래 픽셀·정점 연산을 병렬 처리하려고 만들어졌지만, 그래픽 말고 다른 계산에도 쓰이면서 GPGPU(General-Purpose computing on GPU)라는 말이 생겼고, 지금은 행렬 연산이 많은 딥러닝에 특히 널리 쓰여요. CPU는 적은 수의 강력한 코어로 분기·순차 로직을 빠르게 처리하는 데, GPU는 많은 수의 약한 코어로 처리량(throughput)을 극대화하는 데 강해요.
어른들은 이렇게 불러요
- SIMD
SIMD - 모두에게 같은 동작을 동시에 시키는 것. GPU 병렬 처리의 핵심 방식이에요.
- GPGPU
GPGPU - 그림용 보조팀을 계산에도 쓰는 것. 딥러닝 학습이 대표적인 예예요.
- 처리량(Throughput)
Throughput - 일정 시간에 얼마나 많이 처리하는지. GPU 설계가 가장 중시하는 값이에요.
- AI 가속기(TPU·NPU)
AI Accelerator (TPU/NPU) - 한 가지 계산만을 위한 전용 로봇팔. GPU보다 한 걸음 더 특화된 보조 도구예요. → 오직 그 계산 하나만을 위한 전용 로봇팔
- CPU 스케줄링
CPU Scheduling - 리프트에 누가 먼저 올라갈지 정하는 규칙. CPU 차례를 정하는 이야기예요. 그 페이지의 반장은 CPU가 아니라 운영체제예요. → 리프트에 누가 먼저 올라갈까
- 프로세스/스레드
Process/Thread - 같은 차를 같이 고치는 여러 손. 여러 손으로 일을 나누는 점은 닮았지만, GPU는 같은 계산을 한꺼번에 돌리는 데 특화됐어요. → 같은 차, 여러 손
- 복잡도(Big-O)
Time Complexity - 일이 늘 때 시간이 느는 정도를 재는 자. 병렬로 나누면 같은 Big-O도 체감 속도가 달라져요. → 차가 많아질 때 얼마나 느려질까
- AI 분야의 GPU
GPU in the AI Field - AI 모델(앵무새)을 돌리는 빠른 장비(횃대). AI 분야에서는 추론 비용 관점으로 짧게 다뤄요. → AI 추론
다음 이야기
상자는 쌓고, 차는 줄 세우고 →