In this chapter, we will be moving on from the hardware perspective of GPUs toward a computing perspective, as is the primary objective of this book. We will begin with an introduction to GPU programming and fundamental ways to set up three different platforms, namely CUDA, ROCm, and Anaconda. NVIDIA and AMD GPUs will be revisited here to explore the practical usage of GPUs with the three platforms.
The concept of Python programming integrated with GPU code invocation will be discussed. Anaconda users and Python programming enthusiasts will be motivated to invoke GPUs within their program code with CuPy and Numba (formerly Accelerate) via Anaconda. Additionally, we will learn about a few basics of hands-on GPU programming, GPU programmable platforms, CUDA, CUDA libraries, OpenCL, and ROCm.
Moving on, we will explore the Python programming aspect...