Welcome!
-
The CUDA programming model splits work between two parts: the CPU (host) and the GPU (device). The CPU controls what happens in the program and sends tasks called kernels to the GPU for processing. To write good CUDA programs, you…
-
CUDA : Introduction
CUDA (Compute Unified Device Architecture) is NVIDIA’s parallel computing platform that allows scientists and engineers to use GPUs for general-purpose computing. GPUs were built to handle graphics, but CUDA helps them do other types of work too. With CUDA, thousands…
-
Multi-dimensional Arrays in OpenACC
Think of multi-dimensional arrays like a bookshelf – in Fortran, books are arranged column by column (column-major), while in C they’re arranged row by row (row-major). Understanding this layout is crucial for GPU performance because accessing data in the wrong…
-
Working with Allocatable Arrays
Think of allocatable arrays like expandable luggage – you don’t know the exact size you’ll need until runtime, so you adjust the size dynamically. In scientific computing, problem sizes often depend on user input, file data, or computational requirements determined…
-
Data Regions with Fortran Arrays
Think of data regions like setting up a temporary office space. Instead of carrying your laptop back and forth for every small task, you set up once, do multiple tasks, then pack up at the end. That’s exactly what OpenACC…