In the upcoming sections of this chapter, we'll cover libraries that rely heavily on the use of CUDA. Therefore, it's very important that you are familiar with what CUDA is precisely in the grand scheme of things and how this relates to the libraries that we'll ultimately use.
CUDA is a parallel computing platform and an API that was conceived by the NVIDIA Corporation. It's designed to make our lives as programmers simpler and help us fully leverage the power of the incredibly powerful parallelism that our GPUs have to offer for general purpose programming.
With CUDA, we are able to craft our Python programs in a way that is familiar to us while sprinkling in some of the keywords that CUDA has to offer in order to fully utilize the GPU. These keywords allow us to map appropriate sections of our code base that deal with the particularly computationally expensive calculations to massively parallel hardware and thus drastically improve performance.