Bureaucrats, cc_docs_admin, cc_staff
2,314
edits
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
This tutorial introduces the Graphics Processing Unit (GPU) as a massively parallel computing device, the CUDA parallel programming language, and some of the CUDA numerical libraries for use in high performance computing. | This tutorial introduces the Graphics Processing Unit (GPU) as a massively parallel computing device, the CUDA parallel programming language, and some of the CUDA numerical libraries for use in high performance computing. | ||
{{Prerequisites | {{Prerequisites | ||
|title= | |title=Prerequisites for this tutorial | ||
|content= | |content= | ||
This tutorial uses CUDA to accelerate C or C++ code. A working knowledge of one of these languages is therefore required to gain the most benefit out of it. Even though Fortran is also supported by CUDA, for the purpose of this tutorial we only cover the CUDA C/C++. From here on, we use term CUDA C to refer "CUDA C and C++". CUDA C is essentially a C/C++ that allow one to execute function on both GPU and CPU. | |||
}} | }} | ||
{{Objectives | {{Objectives | ||
|title= | |title=Learning objectives | ||
Learning objectives | |||
|content= | |content= | ||
* Understanding the architecture of a GPU. | * Understanding the architecture of a GPU. | ||
* Understanding the workflow of a CUDA program | * Understanding the workflow of a CUDA program | ||
* Managing GPU memory and understanding the various types of GPU memory | * Managing GPU memory and understanding the various types of GPU memory | ||
* Writing and compiling a minimal CUDA code and compiling CUDA examples | * Writing and compiling a minimal CUDA code and compiling CUDA examples | ||
}} | }} | ||
=What is GPU ?= | =What is GPU ?= |