2025/01/21 3

CUDA 2D 블록 내 스레드 인덱싱(Thread Indexing) - 공부하는 도비

CUDA의 내장 변수를 사용해 스레드가 특정 데이터에 정확히 접근하도록 하는 인덱스 계산 방법을 스레드 인덱싱(thread indexing)이라고 한다. 오늘은 2D 블록 내 스레드 인덱싱에 대해 정리를 하고자 합니다.  * Global Thread ID(전역 번호) : CUDA에서 각 스레드를 전역적으로 고유하게 식별할 수 있도록 정의된 ID를 의미함 Global Thread ID는 스레드 ID(threadIdx), 블록 ID(blockIdx), 블록의 크기(blockDim)를 사용해 계산합니다. 2차원 블록(2D block)은 다음 그림으로 간단하게 정의할 수 있습니다.  thread(x, y)의 전역 번호는 아래 두 항목의 합입니다. - 자신이 속한 1차원 하위 블록 앞까지의 스레드 갯수 = blo..

CUDA 2025.01.21

CUDA 큰 벡터의 합 - 공부하는 도비

2025.01.21 - [CUDA] - CUDA 스레드 레이아웃 설정 및 커널 호출>> - 공부하는 도비>> - 공부하는 도비" data-og-description="CUDA 프로그래밍에서 스레드 레이아웃 설정과 커널 호출은 GPU 병렬 처리를 효과적으로 활용하기 위한 핵심 개념입니다. 1. 스레드 레이아웃 설정 GPU 병렬 처리를 위해 CUDA는 스레드(Thread)를 그리" data-og-host="yang-wistory1009.tistory.com" data-og-source-url="https://yang-wistory1009.tistory.com/221" data-og-url="https://yang-wistory1009.tistory.com/221" data-og-image="https://s..

CUDA 2025.01.21

CUDA 스레드 레이아웃 설정 및 커널 호출<<<>>> - 공부하는 도비

CUDA 프로그래밍에서 스레드 레이아웃 설정과 커널 호출은 GPU 병렬 처리를 효과적으로 활용하기 위한 핵심 개념입니다. 1. 스레드 레이아웃 설정 GPU 병렬 처리를 위해 CUDA는 스레드(Thread)를 그리드(Grid)와 블록(Block)으로 구성합니다. 각각의 스레드는 고유한 ID를 가져 작업을 병렬로 수행합니다.  (1) 스레드 구성 요소- 그리드(Grid) : 여러 블록으로 구성된 구조- 블록(Block) : 여러 스레드로 구성된 구조- 스레드(Thread) : 실제로 작업을 수행하는 단위 스레드들이 자신이 처리할 데이터가 무엇인지 알기 위해서는 자신이 어떤 블록에 속해 있는지, 또 블록 내 자신의 스레드 번호를 알아야 합니다. 이를 위해서 CUDA는 현재 그리드 및 블록의 형태와 각 스레드가..

CUDA 2025.01.21