Preface: The Matrix is a 1999 science fiction action film. At that time, virtual machines technology were not yet in a mature stage. IBM mainframe LPAR (Logical partitions (LPARs)) is the only implement in market successful. Even Docker technology hasn’t even been born yet! But the film’s screenwriter seemed to predict the truth.
What is the simple definition of a matrix? The matrices are a two-dimensional set of numbers or symbols distributed in a rectangular shape in vertical and horizontal lines so that their elements are arranged in rows and columns.
Background: About five years ago, it was known that parallel computation could unlock the performance (processing speed) of supercomputers. However, programs written in traditional C language still have issue operation in this platform because C program instruction executes sequentially and do not support data parallel computation, it increases the time complexity of a program. Until Docker CUDA was born. This bottleneck appears to have been resolved. This is one of the milestones in the digital world, especially artificial intelligence technology.
Technical details: It is hard to write program in CUDA for average programmer. CUDA puts load on the programmer.
-To package GPU code in separate functions called kernel.
-Need to explicitly manage data transfer between host memory and GPU memory.
-Manual optimization of GPU memory is required.
CUDA is a parallel computing platform and programming model developed by NVIDIA for general computing on graphical processing units (GPUs). With CUDA, developers can dramatically speed up computing applications by harnessing the power of GPUs.
How does CUDA help in AI?
In addition to its components for deep learning, the CUDA Toolkit includes various libraries and components. These provide support for debugging and optimization, compiling, documentation, runtimes, signal processing, and parallel algorithms.
Official document reference: For details please refer to the link – https://catalog.ngc.nvidia.com/orgs/nvidia/containers/cuda