GPU 아키텍처와 연산 구조

GPU는 많은 연산 유닛이 대량의 병렬 작업을 처리하도록 설계된 프로세서다. 그래픽 렌더링뿐 아니라 AI, 영상 인코딩·디코딩, 과학 계산에도 사용된다. 구조의 명칭은 제조사마다 다르므로, 서로 다른 제품의 블록 수를 같은 의미로 단순 비교하면 안 된다.

공통적으로 볼 수 있는 블록

블록역할주의할 점
프로그래머블 연산 유닛셰이더·범용 계산 명령을 병렬로 실행NVIDIA SM, AMD CU/WGP, Intel EU처럼 명칭·구성 단위가 다르다.
스케줄러·레지스터실행할 스레드를 배치하고 중간 상태를 보관메모리 대기 중 다른 작업을 실행해 지연을 숨긴다.
L1·공유 메모리·L2 캐시반복 접근 데이터를 가까이 보관용량·정책은 GPU 세대와 워크로드에 따라 성능 영향이 다르다.
메모리 컨트롤러·VRAMGPU와 외부 그래픽 메모리를 연결버스 폭·데이터율·캐시·압축이 함께 대역폭을 결정한다.
고정 기능 엔진래스터화, 텍스처, 디스플레이, 영상 인코드·디코드 등세대·모델에 따라 탑재 여부와 코덱 지원이 달라진다.

병렬 처리와 지연 숨기기

GPU 프로그램은 대개 동일하거나 비슷한 명령을 많은 데이터 요소에 적용한다. 예를 들어 화면의 많은 픽셀 또는 행렬의 많은 원소에 같은 셰이더·커널을 실행한다. 한 작업이 메모리를 기다릴 때 다른 준비된 작업으로 전환해 긴 메모리 지연을 감추는 방식이 처리량 중심 설계의 핵심이다.

이 특성 때문에 조건 분기가 크게 갈리거나 데이터 접근이 불규칙한 작업은 실행 유닛 활용도가 낮아질 수 있다. 반대로 GPU가 병렬화 가능한 작업을 잘 처리하더라도, 작은 작업·CPU 병목·VRAM 부족·지원되지 않는 API는 전체 성능을 제한할 수 있다.

제조사 명칭을 읽는 법

  • NVIDIA는 CUDA 프로그래밍 모델에서 GPU를 SM(Streaming Multiprocessor)의 집합으로 설명하며, SM 내부에 실행 유닛·레지스터·L1/공유 메모리 자원이 있다.
  • AMD RDNA 계열은 Compute Unit 또는 Workgroup Processor 같은 단위를 사용하며, 세대마다 레이 트레이싱·AI·캐시·미디어 기능의 구성이 달라진다.
  • Intel의 Xe 계열에서는 Execution Unit(EU)이 프로그래머블 셰이더·미디어·GPGPU 커널 실행 단위로 설명된다.

따라서 ‘연산 유닛 수’는 같은 제조사·세대 안에서의 대략적 비교 보조 지표로만 쓰고, 실제 응용 프로그램의 측정 결과와 함께 해석한다.

관련 문서

출처