cudnn
**cuDNN** is the **NVIDIA deep neural network primitives library that provides optimized kernels for core DL operations** - it is the standard acceleration layer behind convolution, normalization, recurrent, and attention-related workloads on CUDA platforms.
**What Is cuDNN?**
- **Definition**: Vendor-optimized runtime library for deep learning operators with backend algorithm selection.
- **Operator Coverage**: Convolution, pooling, normalization, activation, RNN, and tensor transformation primitives.
- **Algorithm Engine**: Chooses among multiple kernels based on tensor shapes, precision mode, and workspace limits.
- **Framework Role**: Used by PyTorch, TensorFlow, and other stacks through backend dispatch.
**Why cuDNN Matters**
- **Performance Baseline**: Delivers highly tuned kernels that most custom implementations must match or beat.
- **Portability**: Provides a stable API layer across GPU generations and driver updates.
- **Numerical Support**: Includes mixed-precision and tensor-core optimized execution paths.
- **Engineering Efficiency**: Teams avoid reimplementing standard deep learning primitives from scratch.
- **Reliability**: Mature library behavior reduces risk in production training and inference jobs.
**How It Is Used in Practice**
- **Backend Configuration**: Enable benchmark and deterministic modes according to reproducibility policy.
- **Workspace Tuning**: Allocate sufficient workspace so cuDNN can choose faster algorithms.
- **Profiling Checks**: Verify dispatch paths and fallback behavior for unusual tensor layouts.
cuDNN is **the foundational GPU operator library for deep learning systems** - correct configuration and profiling of cuDNN paths are essential for strong model performance.