# NVIDIA CUDA – Comprehensive Documentation for GPU Programming, Libraries, and Tooling This collection provides end-to-end documentation for NVIDIA CUDA, covering installation, programming models, architecture-specific tuning, runtime and driver APIs, math and utility libraries, compiler and PTX interfaces, debugging and profiling tools, platform integrations, numerical white papers, and legacy archives. It enables engineers to build, optimize, debug, and deploy high-performance GPU-accelerated applications across data center, workstation, cloud, and embedded environments. --- ## CUDA Installation Guides - [Use this guide when setting up CUDA for the first time or validating a basic environment to ensure the GPU, driver, compiler, and runtime are functioning correctly.](https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html.md) - [Consult this page when installing CUDA on Linux systems, including repository-based installs, runfile installs, driver compatibility, and common setup issues.](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html.md) - [Use this guide when installing CUDA on Windows, including Visual Studio integration and resolving OS, driver, and toolkit compatibility issues.](https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html.md) --- ## CUDA Programming Guides - [Read this when learning or revisiting the CUDA programming model, including threads, blocks, grids, memory hierarchy, streams, and concurrency.](https://docs.nvidia.com/cuda/cuda-programming-guide/index.html.md) - [Use this guide when optimizing CUDA C/C++ code for performance and correctness, covering memory access patterns, occupancy, and synchronization.](https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/index.html.md) - [Consult this documentation when using CUDA utility helpers in Python workflows that interface with lower-level CUDA functionality.](https://docs.nvidia.com/cuda/cutile-python/index.html.md) - [Use this reference when inspecting, generating, or writing PTX directly, such as analyzing compiler output or using inline PTX.](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html) - [Read this when working with Tile IR or other experimental compiler-internal representations for advanced code-generation or research use cases.](https://docs.nvidia.com/cuda/tile-ir/index.html.md) --- ## CUDA Architecture Guides - [Use this guide when validating CUDA applications on Ada Lovelace GPUs and understanding architectural compatibility considerations.](https://docs.nvidia.com/cuda/ada-compatibility-guide/index.html.md) - [Consult this page when tuning CUDA kernels specifically for Ada GPUs, including instruction behavior and memory throughput.](https://docs.nvidia.com/cuda/ada-tuning-guide/index.html.md) - [Read this guide when porting or validating CUDA applications on Ampere GPUs.](https://docs.nvidia.com/cuda/ampere-compatibility-guide/index.html.md) - [Use this guide when tuning CUDA kernels for performance on Ampere GPUs.](https://docs.nvidia.com/cuda/ampere-tuning-guide/index.html.md) - [Consult this guide when validating CUDA applications on Blackwell GPUs.](https://docs.nvidia.com/cuda/blackwell-compatibility-guide/index.html.md) - [Use this guide when tuning CUDA kernels for Blackwell GPU architectures.](https://docs.nvidia.com/cuda/blackwell-tuning-guide/index.html.md) - [Read this guide when validating CUDA applications on Hopper GPUs.](https://docs.nvidia.com/cuda/hopper-compatibility-guide/index.html.md) - [Use this guide when tuning CUDA kernels for Hopper GPUs and large-scale HPC or AI workloads.](https://docs.nvidia.com/cuda/hopper-tuning-guide/index.html.md) - [Consult this reference when embedding inline PTX assembly inside CUDA code.](https://docs.nvidia.com/cuda/inline-ptx-assembly/index.html.md) - [Use this guide when interoperating between PTX and other CUDA compilation stages.](https://docs.nvidia.com/cuda/ptx-writers-guide-to-interoperability/index.html) - [Read this guide when maintaining CUDA applications targeting Turing GPUs.](https://docs.nvidia.com/cuda/turing-compatibility-guide/index.html.md) - [Use this guide when tuning CUDA kernels for Turing GPU architectures.](https://docs.nvidia.com/cuda/turing-tuning-guide/index.html.md) - [Important: this Video Decoder page is legacy; modern NVDEC/NVCUVID documentation lives under the NVIDIA Video Codec SDK. Use this only for historical context.](https://docs.nvidia.com/video-technologies/video-codec-sdk/13.0/index.html) --- ## CUDA API References - [Use this reference when performing dense linear algebra operations on GPUs using cuBLAS.](https://docs.nvidia.com/cuda/cublas/index.html.md) - [Consult this page when using the cuDLA API to offload workloads to NVIDIA Deep Learning Accelerators.](https://docs.nvidia.com/cuda/cudla-api/index.html.md) - [Use this documentation when performing fast Fourier transforms on the GPU using cuFFT.](https://docs.nvidia.com/cuda/cufft/index.html.md) - [Read this guide when using cuFile APIs for GPU Direct Storage integration.](https://docs.nvidia.com/gpudirect-storage/api-reference-guide/index.html) - [Consult this reference when generating random numbers on the GPU using cuRAND.](https://docs.nvidia.com/cuda/curand/index.html.md) - [Use this guide when solving linear systems or eigenvalue problems with cuSOLVER.](https://docs.nvidia.com/cuda/cusolver/index.html.md) - [Read this reference when working with sparse matrix operations using cuSPARSE.](https://docs.nvidia.com/cuda/cusparse/index.html.md) - [Use this documentation when leveraging low-level CUDA primitives such as scans, reductions, and sorting via CUB.](https://nvlabs.github.io/cub/) - [Consult this reference when working directly with the CUDA Driver API for explicit context and module management.](https://docs.nvidia.com/cuda/cuda-driver-api/index.html.md) - [Use this guide when relying on CUDA math library functions and numerical primitives.](https://docs.nvidia.com/cuda/cuda-math-api/index.html.md) - [Read this documentation when using the CUDA Runtime API in standard CUDA applications.](https://docs.nvidia.com/cuda/cuda-runtime-api/index.html.md) - [Important: libcudacxx documentation may be superseded by CCCL/libcu++ documentation outside the CUDA doc tree.](https://nvidia.github.io/libcudacxx/) - [Use this reference when performing image and signal processing operations using NPP.](https://docs.nvidia.com/cuda/npp/index.html.md) - [Consult this page when using NVBLAS to transparently accelerate BLAS calls on GPUs.](https://docs.nvidia.com/cuda/nvblas/index.html.md) - [Use this guide when working with CUDA fatbinary formats via NVFATBIN.](https://docs.nvidia.com/cuda/nvfatbin/index.html.md) - [Read this reference when performing device-side or host-side JIT linking using NVJITLINK.](https://docs.nvidia.com/cuda/nvjitlink/index.html.md) - [Consult this page when accelerating JPEG encoding or decoding using NVJPEG.](https://docs.nvidia.com/cuda/nvjpeg/index.html.md) - [Use this guide when compiling CUDA code at runtime using NVRTC.](https://docs.nvidia.com/cuda/nvrtc/index.html.md) - [Read this documentation when using Thrust for high-level parallel algorithms in CUDA.](https://nvidia.github.io/cccl/thrust/) --- ## PTX Compiler API References - [Use this reference when interfacing programmatically with the PTX compiler to build custom compilation pipelines.](https://docs.nvidia.com/cuda/ptx-compiler-api/index.html.md) --- ## Miscellaneous - [Use CUPTI when collecting profiling and tracing data from CUDA applications.](https://docs.nvidia.com/cupti/index.html) - [Consult this guide to understand CUDA driver and runtime compatibility guarantees.](https://docs.nvidia.com/deploy/cuda-compatibility/index.html) - [Use this demo suite as reference implementations for validating CUDA installations and features.](https://docs.nvidia.com/cuda/demo-suite/index.html.md) - [Read this documentation when integrating CUDA debugging functionality into custom tools.](https://docs.nvidia.com/cuda/debugger-api/index.html.md) - [Consult this guide when working with EFLOW in embedded or specialized CUDA workflows.](https://docs.nvidia.com/cuda/eflow-users-guide/index.html.md) - [Use this guide when enabling GPUDirect RDMA for low-latency GPU-to-network or GPU-to-storage communication.](https://docs.nvidia.com/cuda/gpudirect-rdma/index.html.md) - [Consult this page when enabling GPUDirect Storage to bypass host memory for IO-heavy workloads.](https://docs.nvidia.com/gpudirect-storage/index.html) - [Important: MIG documentation is canonically maintained under NVIDIA Datacenter docs, not the CUDA doc tree.](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/index.html) - [Use this guide when deploying CUDA applications in virtualized GPU environments.](https://docs.nvidia.com/cuda/vGPU/index.html) - [Consult this page when running CUDA under Windows Subsystem for Linux.](https://docs.nvidia.com/cuda/wsl-user-guide/index.html.md) --- ## CUDA Tools - [Use Compute Sanitizer to detect memory errors, race conditions, and undefined behavior in CUDA programs.](https://docs.nvidia.com/compute-sanitizer/index.html) - [Use this page when inspecting CUDA binaries, fatbins, and object files.](https://docs.nvidia.com/cuda/cuda-binary-utilities/index.html.md) - [Consult this guide when receiving compile-time optimization advice for CUDA code.](https://docs.nvidia.com/cuda/cuda-compile-time-advisor/index.html.md) - [Use this documentation when debugging CUDA applications with CUDA-GDB.](https://docs.nvidia.com/cuda/cuda-gdb/index.html.md) - [Read this reference when compiling CUDA code using the nvcc compiler driver.](https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html.md) - [Use this tool when performing kernel-level performance analysis with Nsight Compute.](https://docs.nvidia.com/nsight-compute/index.html) - [Consult this guide when tracing system-wide GPU activity using Nsight Systems.](https://docs.nvidia.com/nsight-systems/index.html) - [Use this documentation when developing CUDA applications with Nsight Visual Studio Edition.](https://docs.nvidia.com/nsight-visual-studio-edition/index.html) - [Read this guide when developing CUDA applications with Nsight Eclipse plugins.](https://docs.nvidia.com/cuda/nsight-eclipse-plugins-guide/index.html.md) - [Consult this page when installing Nsight Eclipse plugins.](https://docs.nvidia.com/cuda/nsightee-plugins-install-guide/index.html) --- ## White Papers - [Read this paper to understand floating-point precision, rounding, and IEEE-754 behavior on NVIDIA GPUs.](https://docs.nvidia.com/cuda/floating-point/index.html.md) - [Consult this document when studying incomplete LU and Cholesky factorization methods on GPUs.](https://docs.nvidia.com/cuda/incomplete-lu-cholesky/index.html.md) --- ## Application Notes - [Use this application note when developing CUDA applications for NVIDIA Tegra platforms.](https://docs.nvidia.com/cuda/cuda-for-tegra-appnote/index.html.md) --- ## Compiler SDK - [Consult this reference when using the NVVM compiler API.](https://docs.nvidia.com/cuda/libnvvm-api/index.html.md) - [Read this guide when working with the CUDA libdevice library.](https://docs.nvidia.com/cuda/libdevice-users-guide/index.html.md) - [Use this specification when working directly with NVVM IR.](https://docs.nvidia.com/cuda/nvvm-ir-spec/index.html.md) --- ## CUDA Archives - [Use this archive when maintaining legacy CUDA C programming models.](https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html.md) - [Consult this archive when comparing historical CUDA feature sets.](https://docs.nvidia.com/cuda/cuda-features-archive/index.html.md) --- ## Legal Notices - [Review this page for CUDA licensing terms and legal notices.](https://docs.nvidia.com/cuda/eula/index.html.md)