본문 바로가기

CUDA 프로그래밍35

CUDA의 메모리 Access와 Type (예제 : matrix multiplication) References Programming Massively Parallel Processors Contents 메모리 액세스 효율 (compute-to-global-memory-access) Matrix Multiplication 예제 CUDA Device 메모리 타입(Memory Types) 지난 포스팅들을 통해서 CUDA 커널 함수를 작성하는 방법과 어떻게 많은 수의 스레드들의 작업 수행을 구성하고 조정하는지에 대해 알아봤습니다. CUDA 프로그래밍 기초 (예제 : vector addition) CUDA Thread 구조와 Data Mapping (예제 : 이미지 흑백, Blur 처리) CUDA Programming Model CUDA Thread 동기화 및 스케쥴링 / 리소스 할당 이번 포스팅에서는.. 2021. 12. 5.
CUDA Thread 동기화 및 스케쥴링 / 리소스 할당 References Programming Massively Parallel Processors Contents 동기화(Synchronization) Transparent Scalability 리소스 할당(Resource Assignment) Thread Scheduling (Warp) Synchronization & Transparent Scalability CUDA는 같은 블록 내에 있는 스레드들이 barrier synchronization(배리어 동기화) 함수인 __syncthreads()를 사용하여 스레드들의 작업을 조율할 수 있게 합니다. __syncthreads()를 호출한 스레드는 호출한 위치에서 멈추게 되는데, 블록 내의 모든 스레드들이 해당 위치에 도달할 때까지 멈추게 됩니다. 이렇게 하면.. 2021. 12. 4.
CUDA Programming Model References https://developer.nvidia.com/blog/cuda-refresher-cuda-programming-model/ CUDA Toolkit Documentation https://github.com/nvidia/cuda-samples Contents CUDA kernel and thread hierarchy Matrix Addition 예제 Memory hierarchy 이전 CUDA 관련 포스트들에서 CUDA의 간략한 아키텍처와 CUDA 프로그래밍의 기본적인 부분에 대해서 알아봤습니다. GPU와 CUDA CUDA 프로그래밍 기초 (예제 : vector addition) CUDA Thread 구조와 Data Mapping (예제 : 이미지 흑백, Blur 처리) 새로운 .. 2021. 12. 3.
CUDA Thread 구조와 Data Mapping (예제 : 이미지 흑백, Blur 처리) References Programming Massively Parallel Processors CUDA Toolkit Documentation https://github.com/nvidia/cuda-samples Contents CUDA Thread Organization Built-in variables : threadIdx, blockIdx, blockDim, gridDim Mapping threads to multidimensional data CUDA Thread Organization 지난 포스팅에서 기본적인 CUDA 프로그래밍에 대한 것들을 살펴보고, 예제로 vector addition을 구현해보았습니다. CUDA 프로그래밍 기초 (예제 : vector addition) CUDA 프로그래밍 기.. 2021. 12. 2.
CUDA 프로그래밍 기초 (예제 : vector addition) References CUDA Toolkit Documentation Programming Massively Parallel Processors Contents 간략한 GPU와 CUDA 요약 데이터 병렬화(Data Parallelism) CUDA 프로그램 구조 벡터 덧셈(vector addition) 예제 Kernel Function Built-in variables (blockDim, threadIdx, blockIdx) 지난 포스팅에서 GPU와 CUDA에 대해서 간략하게 알아봤습니다. [병렬프로그래밍/CUDA] - GPU와 CUDA GPU와 CUDA References CUDA Toolkit Documentation Programming Massively Parallel Processors Conten.. 2021. 12. 2.