GPU 개념 설명
GPU는 그래픽 처리 장치다. 같은 계산을 아주 많이 동시에 하는 특수 목적 프로세서다. 그래픽 처리뿐 아니라 AI 학습·추론, 과학 계산 같은 범용 병렬 연산의 핵심 장치가 되었다. 그래서 GPU는 그래픽 전용 칩이 아니라 범용 병렬 연산 장치로 설명해야 한다. C…
주요 장면
대본
GPU란 무엇인가
GPU는 그래픽 처리 장치다. 같은 계산을 아주 많이 동시에 하는 특수 목적 프로세서다.
그래픽 처리뿐 아니라 AI 학습·추론, 과학 계산 같은 범용 병렬 연산의 핵심 장치가 되었다.
그래서 GPU는 그래픽 전용 칩이 아니라 범용 병렬 연산 장치로 설명해야 한다.
CPU와 GPU의 차이
CPU는 소수의 강력한 코어로 복잡하고 직렬인 제어 작업에 강하다.
GPU는 많은 단순 코어로 같은 연산을 데이터에 나눠 대량 병렬 처리한다.
다만 GPU는 알고리즘을 병렬로 설계해야 하며, 복잡한 분기에서는 CPU보다 느려질 수 있다.
GPU 내부 구조
GPU는 수백~수천 개의 소형 연산 코어를 여러 묶음으로 나눠 구성된다.
SM은 GPU 안에서 작업을 관리하고 실행하는 단위이며, 안에 CUDA 코어가 다수 들어 있다.
각 SM은 SIMT 방식으로 한 명령을 여러 스레드가 서로 다른 데이터에 동시에 수행한다.
GPU의 세 가지 원리
GPU의 원리는 세 가지로 요약된다.
첫째는 데이터 병렬성이다. 같은 연산을 원소 단위로 나눠 동시에 수행한다.
둘째는 지연 은닉이다. 메모리 접근으로 멈춘 묶음 대신 다른 묶음을 실행한다.
셋째는 대역폭 중심 설계다. CPU보다 넓은 메모리 버스로 많은 데이터를 옮긴다.
GPU의 유형
GPU는 설계 목적과 장착 형태에 따라 여러 유형으로 나뉜다.
내장형은 CPU 패키지나 메인보드에 놓여 시스템 메모리를 CPU와 나눠 쓴다.
전용형은 독립 그래픽 카드에 전용 메모리를 갖추고, 데이터센터 GPU는 AI 학습·추론과 HPC에 쓰인다.
계산 예: 1,000만 개 덧셈
1,000만 개 데이터에 같은 덧셈을 한 번씩 수행하는 가상의 예를 보자.
CPU 코어 한 개가 한 연산을 1ns에 끝내면 순차 처리는 10ms가 걸린다.
연산 유닛 5,000개가 동시에 동작하면 이상적인 병렬 시간은 2μs다.
이 값은 이상적인 상한이다. 실제로는 메모리 접근과 전송 시간이 더해져 향상이 작아진다.
시험 감점 포인트와 정리
마지막으로 시험에서 감점되는 부분을 짚는다.
GPU를 그래픽 전용 칩으로만 설명하거나 제품 수치를 일반화하면 감점된다.
또 CPU와 GPU 중 어느 쪽이 항상 빠르다고 쓰면 안 된다.
정리하면 GPU는 많은 코어로 같은 연산을 데이터에 동시에 수행하는 병렬 구조다.