CUDA (Compute Unified Device Architecture) is NVIDIA’s software platform for general-purpose computing on GPUs. Its objective is to give developers a familiar C/C++ (and Fortran, Python bindings) programming model with explicit control over kernels (functions that run on the device), streams (ordered queues of work), and memory spaces (host, device, unified). CUDA sits above the GPU driver and below frameworks such as cuDNN, NCCL, and higher-level ML stacks; it is the layer that makes it practical to implement custom operators, HPC solvers, and inference engines that are not covered by a closed library. For AI, virtually every major training and inference stack ultimately depends on CUDA (or a CUDA-compatible runtime) on NVIDIA hardware.
The CUDA execution model is SIMT (Single Instruction, Multiple Threads): programmers write kernels as scalar thread programs; the hardware groups threads into warps of 32 that execute in lockstep. Global memory is large but high-latency; shared memory and registers are fast but limited per block. A CPU thread is heavyweight, preemptible, and optimized for irregular control flow and system calls; a CUDA thread is extremely lightweight and only efficient when workloads are regular and memory access is coalesced. Host code runs on the CPU and issues asynchronous launches; synchronization (cudaDeviceSynchronize, events) defines visibility between host and device. Multi-GPU scaling uses peer access, NCCL collectives, and NVLink/PCIe topology awareness—concerns that do not exist in single-socket CPU programming in the same form.
Red Hat does not ship CUDA itself (it is NVIDIA proprietary) but documents and supports running CUDA workloads on RHEL and OpenShift. RHEL notes cover installing the NVIDIA driver, CUDA toolkit from NVIDIA repositories or containers, and using the NVIDIA Container Toolkit so GPU devices pass through to Podman or Kubernetes pods. OpenShift AI and OpenShift GPU operator patterns integrate device plugins and validated images for notebook and model-serving workloads. Red Hat’s AI portfolio assumes CUDA where NVIDIA GPUs are present, while keeping the operating platform (SELinux, cgroups, kABI-stable drivers where offered) under enterprise support boundaries defined in Red Hat and NVIDIA joint certification guides.
