Перейти к содержимому

CUDA 코드로 이해하는 GPU의 기본 계층 구조 — Thread부터 SM, Memory Hierarchy까지

AI_MATH

0:00 / 0:00

CUDA 코드로 이해하는 GPU의 기본 계층 구조 — Thread부터 SM, Memory Hierarchy까지

62 просмотра · 3 дн. назад
AI_MATH
101 подписчик
62 просмотра · 3 дн. назад
CUDA로 작성한 프로그램은 GPU에서 어떻게 실행될까요? GPU는 수많은 스레드를 동시에 처리할 수 있는 병렬 컴퓨팅 장치입니다. 하지만 GPU의 동작을 이해하려면 단순히 스레드의 개수뿐 아니라, 스레드들이 어떻게 구성되고 실제 하드웨어에 배치되며, 계산에 필요한 데이터를 어디에서 가져오는지 알아야 합니다. 이번 영상에서는 CUDA 코드를 바탕으로 GPU의 기본 실행 계층과 메모리 구조를 단계적으로 살펴봅니다. Thread, Warp, Block, Grid와 같은 논리적 실행 구조부터 실제 연산을 수행하는 SM(Streaming Multiprocessor), 그리고 Register, Shared Memory, Global Memory, L1·L2 Cache, Memory Controller, DRAM까지 연결해 설명합니다. 각 구성 요소의 정의뿐 아니라 실제 CUDA 코드에서 어떤 역할을 하는지, 서로 어떤 관계를 가지는지 시각적으로 이해하는 것이 목표입니다. 타임라인 00:00 01 Thread — GPU의 개별 실행 문맥 02:34 02 Warp — 32개 Thread와 SIMT 05:24 03 Block — Thread의 협력과 동기화 08:25 04 SM — Warp 실행과 대기 시간 숨기기 11:26 05 Grid — 전체 작업과 Block 배치 14:25 06 Register — 계산값과 레지스터 자원 17:23 07 Shared Memory — 데이터 공유와 재사용 20:06 08 Global Memory — 주소 패턴과 Coalescing 22:54 09 L1 & L2 Cache — 메모리 공간과 데이터 공급 경로 25:46 10 Memory Controller & DRAM — 실제 저장 장치의 동작 28:32 11 최종 통합 — 하나의 CUDA 커널로 연결되는 GPU 주요 내용 1. GPU의 실행 계층 (Execution Hierarchy) CUDA 커널의 실행 단위인 Thread부터 32개 Thread로 구성되는 Warp, 여러 Warp를 포함하는 Block, 전체 커널 실행을 구성하는 Grid까지 살펴봅니다. 또한 논리적 실행 구조와 물리적 하드웨어의 차이를 구분하고, Block과 Warp가 실제 SM에서 어떻게 실행되는지 설명합니다. 2. GPU의 메모리 계층 (Memory Hierarchy) 스레드의 계산값을 저장하는 Register, 같은 Block의 스레드들이 협력하는 Shared Memory, GPU 전체에서 접근할 수 있는 Global Memory를 살펴봅니다. Register Pressure, Synchronization, Bank Conflict, Memory Coalescing을 통해 각각의 메모리 구조가 GPU 실행에 어떤 영향을 미치는지도 알아봅니다. 3. 캐시와 물리적 메모리 구조 L1·L2 Cache가 Shared Memory 및 Global Memory와 어떤 관계를 가지는지, Cache Hit와 Cache Miss에 따라 데이터 공급 경로가 어떻게 달라지는지 살펴봅니다. 이어서 Memory Controller와 DRAM의 역할, DRAM Bank·Row 구조, GDDR과 HBM의 차이까지 연결합니다. 4. 하나의 CUDA 커널로 전체 구조 이해하기 마지막에는 간단한 벡터 덧셈 커널을 통해 지금까지 살펴본 개념을 하나로 연결합니다. 어떤 Thread가 계산을 담당하는지, 해당 Thread가 어느 SM에서 실행되는지, 필요한 데이터는 어떤 메모리 계층을 통해 공급되는지 전체 과정을 따라갑니다. GPU의 계층 구조는 단순히 여러 실행 단위와 메모리를 나열한 것이 아닙니다. 계산을 어떻게 나누고, 실제 하드웨어에서 어떻게 실행하며, 데이터를 어떻게 저장하고 공급할 것인가에 대한 구조입니다. 이 영상은 CUDA 프로그래밍과 GPU 아키텍처를 처음 이해하려는 분들부터, GPU 최적화와 AI 연산의 하드웨어 동작을 더 깊이 공부하려는 분들을 위한 기초 개념을 다룹니다. #CUDA #GPU #GPUArchitecture #GPUHierarchy #GPUMemory #ParallelComputing #Thread #Warp #Block #SM #SharedMemory #GlobalMemory #MemoryHierarchy #GPU최적화