CUDA 13.0—New Features and Beyond | NVIDIA GTC D.C.

NVIDIA CUDA Team (NVIDIA)

NVIDIA GTC 2025 · Session

Overview

This talk, delivered by Rob from the NVIDIA CUDA team at GTC D.C., provides an in-depth look at the advancements and strategic directions introduced with CUDA 13.0, NVIDIA's latest major release of its parallel computing platform and programming model. Released in August, CUDA 13.0 marks a significant milestone, being the first full-bore release with comprehensive support for the Blackwell architecture. As a major version bump, it lays critical groundwork for future development, addressing fundamental changes and setting the stage for the next 18 months of CUDA evolution.

Watch on YouTube

Visual summary for CUDA 13.0—New Features and Beyond | NVIDIA GTC D.C. by NVIDIA CUDA Team
Visual summary for CUDA 13.0—New Features and Beyond | NVIDIA GTC D.C. by NVIDIA CUDA Team

Key moments

  1. 0:00 Introduction to CUDA 13.0 and its major significance
  2. 2:00 New CUDA 13 memory management APIs and allocators
  3. 2:20 Introducing CDMM for flexible memory topology on Grace
  4. 3:15 Checkpoint/Restore for long jobs and inference warm-start
  5. 4:10 Micro-optimization: spilling registers to shared memory for latency
  6. 4:55 Unifying CUDA programming model for embedded to data center
  7. 6:00 Making Python a first-class language for CUDA toolkit

CUDA 13.0—New Features and Beyond | NVIDIA GTC D.C.

Speakers: Rob (NVIDIA CUDA Team)

Conference: NVIDIA GTC

YouTube: https://www.youtube.com/watch?v=_vL8uz7kf0M

Overview

This talk, delivered by Rob from the NVIDIA CUDA team at GTC D.C., provides an in-depth look at the advancements and strategic directions introduced with CUDA 13.0, NVIDIA's latest major release of its parallel computing platform and programming model. Released in August, CUDA 13.0 marks a significant milestone, being the first full-bore release with comprehensive support for the Blackwell architecture. As a major version bump, it lays critical groundwork for future development, addressing fundamental changes and setting the stage for the next 18 months of CUDA evolution.

The presentation highlights a dual focus: immediate feature enhancements within CUDA 13.0 and a forward-looking vision for the CUDA programming model. Key themes revolve around improving developer productivity, enhancing performance portability across diverse GPU architectures, streamlining memory management, and unifying the development experience from embedded devices to data center supercomputers. This release is crucial for developers navigating the complexities of modern GPU computing, particularly in the rapidly evolving fields of AI, HPC, and real-time systems, by providing more intuitive programming paradigms, robust tooling, and architectural consistency.

The significance of CUDA 13.0 extends beyond just new hardware support; it represents NVIDIA's commitment to evolving the core programming model to meet the demands of increasingly complex and specialized hardware, especially tensor cores. By introducing innovative approaches to compilation, memory orchestration, and language integration, NVIDIA aims to make high-performance GPU programming more accessible and efficient, ensuring that developers can leverage the full power of their hardware without getting bogged down in low-level architectural specifics.

Background

▶ Watch: Introduction to CUDA 13.0 and its major significance (0:00)

CUDA, a cornerstone of parallel computing, boasts a rich, two-decade-long history rooted in C++ development. Its organic growth has mirrored the exponential advancements in GPU hardware, evolving from a general-purpose compute platform to the indispensable engine driving modern AI and high-performance computing. However, this rapid evolution has introduced several persistent challenges in the ML and systems space that CUDA 13.0 seeks to address.

One of the most fundamental challenges is memory management. Regardless of the system topology—be it ARM, Grace, x86 PCIe, or embedded—the cost of moving data between CPU and GPU memory, or even between different levels of the memory hierarchy on the GPU, remains a critical bottleneck. Developers constantly grapple with understanding data locality, movement, and access patterns to achieve optimal performance. Prior CUDA versions offered tools, but the increasing complexity of heterogeneous systems demanded more granular control and transparency.

Another significant hurdle has been cluster-scale programming. While technologies like MPI have long existed for distributed computing, building and orchestrating applications that efficiently scale across numerous GPUs and nodes remains a complex endeavor. The nuances of inter-GPU communication, data distribution, and workload balancing often require specialized knowledge, making it difficult for many developers to fully leverage large-scale clusters.

The advent and rapid evolution of tensor cores have also presented a unique set of challenges. These specialized units, designed for high-throughput matrix operations crucial for deep learning, have become increasingly capable and complex across GPU generations. What once required a single warp of 32 threads on an Ampere GPU to drive a tensor core effectively, now demands 128 threads across four warps on Hopper. This architectural divergence breaks traditional portability models, where a virtual ISA like PTX could abstract away hardware specifics. Compilers could JIT-compile instructions, but they couldn't dynamically create new threads or memory layouts, forcing developers to fundamentally rethink their applications for each new generation.

Finally, the burgeoning ecosystem of AI/ML frameworks and diverse hardware targets, from tiny embedded systems to massive data centers, has created a fragmented development experience. Developers often face inconsistencies in CUDA versions, driver support, and available functionalities between different platforms. The need for efficient real-time and deterministic GPU scheduling has also grown paramount for applications like autonomous systems, quantum computing, and financial modeling, where microsecond-level response times to external events are critical. These underlying issues form the backdrop against which the innovations in CUDA 13.0 are introduced, aiming to simplify, unify, and accelerate the development of high-performance applications.

Key Findings

▶ Watch: Introducing CDMM for flexible memory topology on Grace (2:20)

CUDA 13.0 introduces a suite of significant advancements and strategic shifts designed to enhance performance, simplify development, and broaden the applicability of GPU computing.

The most prominent contribution is the CUDA Tile programming model. This innovative model fundamentally rethinks how developers interact with GPU hardware, particularly tensor cores. By abstracting operations to the array or tensor level (tiles) rather than individual threads, it offers a more productive, NumPy-like API that is easier to use and teach. Crucially, it reintroduces architecture-agnostic portability across GPU generations, addressing the challenges posed by evolving tensor core designs that previously necessitated architecture-specific code modifications. The model leverages runtime code generation to map abstracted algorithmic operations efficiently onto diverse hardware.

A major strategic initiative is the unification of the CUDA programming model and driver architecture across NVIDIA's diverse product stack, from embedded SOC targets (like Jetson) to server topologies in the data center. This means developers can now write one application and scale it seamlessly from a robot to a supercomputer, eliminating historical disconnects in functionality, drivers, and libraries. This unification significantly boosts developer productivity and simplifies deployment workflows.

CUDA 13.0 also brings substantial enhancements to memory management APIs. New features include managed memory discard and improved UVM (Unified Virtual Memory) capabilities, alongside the introduction of memory allocators that allow developers to provide explicit hints for data placement and movement (CPU, GPU). The Compute Device Memory Manager (CDMM) offers an alternative to NUMA-style memory layouts on Grace systems, providing greater flexibility for legacy applications and containerized environments like Kubernetes.

For high-precision computing, CUDA 13.0 introduces new extended precision capabilities leveraging the Ozaki technique. This method allows for FP32 and FP64 operations to achieve full accuracy with lower-precision intermediate products, resulting in substantial performance speedups (e.g., on GB200) compared to naive implementations, addressing critical needs in domains like finance and HPC.

Python integration receives a major overhaul, with NVIDIA creating multiple layers to expose the full richness of the CUDA ecosystem directly to Python without requiring C++ wrappers. This includes enhanced driver and runtime APIs, and accelerated algorithm libraries. Furthermore, Python packaging inefficiencies have been addressed through simplified wheel naming, reduced redundancy, and a new meta-package for easier installation and version management of CUDA components.

Finally, NVIDIA is investing in LLM-based assistance for its developer tools, such as Insight Compute. This groundbreaking feature aims to demystify complex performance statistics, allowing developers to ask natural language questions about their kernel's performance and receive actionable optimization advice, thereby democratizing advanced GPU optimization.

Technical Deep Dive

▶ Watch: Checkpoint/Restore for long jobs and inference warm-start (3:15)

CUDA 13.0 introduces a profound set of technical advancements that redefine how developers interact with NVIDIA GPUs, from low-level memory operations to high-level programming paradigms.

Memory Management: The release significantly augments CUDA's memory management capabilities. New APIs offer managed memory discard and refined UVM functionality, providing developers with more control over memory lifecycle. The introduction of memory allocators enables explicit hinting to the CUDA runtime about preferred memory locations (CPU vs. GPU) and movement strategies, offering fine-grained control for performance optimization. For Grace systems, the Compute Device Memory Manager (CDMM) is a notable addition. Grace platforms traditionally feature NUMA-node memory layouts where each GPU represents a NUMA node. While beneficial for certain applications, this can complicate memory allocation for others, such as Kubernetes. CDMM provides the option to use a more traditional, non-NUMA memory topology while retaining coherency and ATS benefits, simplifying the porting of legacy applications. Micro-optimizations like spilling registers out of individual kernels to shared memory offer an order of magnitude lower latency compared to traditional global memory spilling, a niche but powerful optimization for latency-sensitive kernels.

Checkpoint and Restore: This feature, now enhanced to support migration across different GPUs and platforms, is critical for two main use cases. First, for long-running training jobs (e.g., LLM training), periodic checkpointing allows for resilient recovery from system failures, saving days of compute time. Second, for inference systems, restoring from a checkpoint enables "warm starts," substantially reducing the non-negligible initialization and configuration time associated with cold-starting an application, leading to significant speedups in deployment.

CUDA Tile Programming Model: This is arguably the centerpiece of CUDA 13.0's programming advancements. It addresses the increasing complexity of programming tensor cores across different GPU generations. Historically, achieving peak performance on tensor cores required deep architectural knowledge, often leading to architecture-specific code. For example, an Ampere tensor core required a single warp of 32 threads, whereas a Hopper tensor core demands 128 threads across four warps. The CUDA Tile model "zooms out" the programming abstraction from individual threads (SIMT) to data tiles or array-level granularity. The cutile API, designed to be intuitive and NumPy-like, allows developers to express linear algebra operations directly on tensors, with the compiler handling the complex mapping to underlying hardware via runtime code generation. This provides high performance with architecture independence, meaning code written with cutile can run efficiently on future GPU generations without modification. It co-exists with traditional SIMT programming for element-wise operations and Cutlass for extreme, architecture-specific, non-portable optimizations.

Compilation Stack (CUDA Tile IR and MLIR): The Tile programming model is underpinned by a sophisticated new compilation pathway. Instead of relying solely on the traditional NVCC -> NVVM -> PTX flow for SIMT kernels, Tile applications follow a parallel path. They are compiled down to CUDA Tile IR, which is described as a "sister to PTX" – an intermediate representation specifically for tile-based operations. This Tile IR is then compiled at runtime down to GPU-specific instructions using MLIR (Multi-Level Intermediate Representation), a framework that employs a series of lowering passes. This MLIR-based backend is designed for interoperability; it can consume Triton Tile IR (from frameworks like OpenAI Triton or PyTorch Inductor) and map it to NVIDIA's GPU backend, enabling various DSLs and compilation frameworks to leverage NVIDIA's optimized runtime compilation for tensor cores, ensuring "day zero support" for new architectures.

Extended Precision (Ozaki Technique): To improve performance for FP32 and FP64 computations, particularly in HPC, CUDA 13.0 integrates techniques (often referred to as the Ozaki technique or similar decomposition methods) that perform higher-precision operations using lower-precision intermediate products while recovering full accuracy. This has shown substantial speedups on hardware like GB200, and is being rolled out as an opt-in feature in math libraries, with plans to make it the default in future releases.

Compiler Improvements: Addressing the growing prevalence of runtime code generation, NVIDIA has focused on compiler speed and efficiency. The Compile Time Advisor tool provides flame charts to visualize where the compiler spends its time, aiding optimization. New fast compile flags allow developers to prioritize compilation speed over ultimate code efficiency. Additionally, NVRTC (NVIDIA Runtime Compilation library) now supports caching of intermediate products, reducing recompilation times.

Unified Driver and Platform: A major architectural shift is the consolidation into one GPU driver that spans NVIDIA's entire product suite, from embedded Jetson devices to data center GPUs. This eliminates the historical "disconnect" where embedded platforms lagged in CUDA version and feature support. This unification enables advanced data center features like Multi-Instance GPU (MIG) (for subdividing a GPU into physically discrete, isolated instances with guaranteed QoS), Multi-Process Server (MPS) (for concurrent execution of multiple applications on a GPU with better resource utilization), and Green Context (for fine-grained spatial partitioning and tight latency targets within a CUDA context) to be available on embedded devices.

Confidential Computing: While not new, CUDA 13.0 extends confidential computing support to Blackwell architectures, including HDXP200 and RTX Pro 6000. This virtualization-based solution creates a trusted execution environment (TEE) to protect data while in use on the GPU, safeguarding it from interception or unauthorized access. Initially supporting single GPU pass-through per TEE, future expansions will include multi-GPU support, particularly important for secure edge inference workloads.

Python Integration: NVIDIA is building multiple layers of exposure to bring the full richness of the CUDA runtime, driver API, and accelerated algorithm libraries directly to Python. This aims to enable native Python GPU programming without the need for C++ wrappers. Significant efforts have also gone into simplifying Python packaging, including streamlined wheel naming (removing CUDA version tags), reduced redundancy in installations, and a new meta-package for pip install cuda-toolkit that simplifies dependency management for complex applications like PyTorch.

Experimental Setup & Results

▶ Watch: Unifying CUDA programming model for embedded to data center (4:55)

While this GTC talk primarily focuses on announcing new features and strategic directions rather than presenting detailed experimental setups or comprehensive benchmark suites, it does highlight several key performance improvements and architectural shifts with supporting data points.

The most illustrative example of the CUDA Tile programming model's impact on developer productivity and potential performance is shown through a matrix multiplication comparison. A naive SIMT matrix multiply written in Python with Numba is presented as long and complex, not maximizing GPU efficiency. In contrast, the same operation implemented using the CUDA Tile model (both Python and C++ versions) is shown to be significantly shorter, more intuitive, and capable of fully driving the tensor cores for top-tier performance. While specific FLOPS or throughput numbers for this example are not provided, the visual comparison of code length and the confident assertion of "top gear" performance underscore the model's effectiveness.

For extended precision (Ozaki technique), concrete results from GB200 hardware are cited. The talk states "very very substantial speed ups versus just out of the box naive FP32, FB64 implementations and even on lower precisions as well by using the same kind of decomposition techniques." This indicates measurable and significant performance gains, although exact percentage speedups or specific benchmark configurations are not detailed in the presentation. The technique was first released for FP32 in CUDA 12.9 (May) and double precision (FP64) with CUDA 13.0 Update 2, confirming its recent integration and proven benefits on modern hardware.

Regarding micro-optimizations, the speaker mentions that spilling registers out of individual kernels to shared memory can achieve "about an order of magnitude lower latency" compared to traditional register spilling. This is a specific, quantifiable benefit for a niche, high-performance optimization, illustrating the continuous focus on fine-grained performance tuning within CUDA.

The talk also notes the expansion of confidential computing support to Blackwell architectures, specifically HDXP200 and RTX Pro 6000. While this is a feature announcement rather than a performance result, it signifies the readiness of the technology for NVIDIA's latest enterprise-grade hardware, particularly relevant for secure inference workloads.

In summary, while the presentation serves as a feature rollout, it provides clear indicators of performance enhancements (e.g., substantial speedups for extended precision, order of magnitude latency reduction for register spilling) and architectural benefits (e.g., simplified high-performance tensor core programming, unified platform performance) on current and future NVIDIA hardware. The focus is on the capabilities and potential enabled by the new features rather than exhaustive benchmark comparisons.

Practical Implications

▶ Watch: Making Python a first-class language for CUDA toolkit (6:00)

CUDA 13.0 and its forward-looking vision carry profound practical implications for a wide range of stakeholders in the AI/ML and HPC ecosystems.

For practitioners and model builders, the CUDA Tile programming model is a game-changer. It promises to democratize high-performance programming on tensor cores by offering a more intuitive, NumPy-like API. This means model developers can achieve state-of-the-art performance for linear algebra operations without needing to delve into the intricate, architecture-specific details of GPU hardware. The renewed architecture-agnostic portability means code written today will run efficiently on future GPU generations, reducing the burden of rewriting or optimizing for new hardware. The enhanced Python integration with native CUDA API exposure and simplified packaging will significantly improve the developer experience, making it easier to build and deploy complex AI models directly in Python. Furthermore, the extended precision techniques will allow scientific computing and financial modeling applications to leverage GPU acceleration for FP32 and FP64 calculations with higher performance without sacrificing accuracy. The LLM-based assistance in developer tools like Insight Compute will lower the barrier to entry for GPU optimization, empowering more developers to fine-tune their kernels effectively.

For infrastructure teams and deployers, the unification of the CUDA driver and programming model across embedded (Jetson) and data center platforms is a major win. It simplifies the entire deployment pipeline, allowing for "build once, deploy anywhere" strategies, from robots to supercomputers. This consistency reduces operational overhead, simplifies version management, and ensures that advanced features like MIG (Multi-Instance GPU), MPS (Multi-Process Server), and Green Context are available across the board, enabling better resource utilization, determinism, and QoS, especially critical for real-time edge AI applications. The new CDMM (Compute Device Memory Manager) offers greater flexibility in memory topology for Grace systems, easing the integration of legacy applications and containerized workloads. Checkpoint and restore capabilities are vital for robust, long-running training jobs and significantly reduce cold-start latencies for inference, improving service availability and responsiveness. Confidential computing support on Blackwell provides a secure execution environment for sensitive workloads, addressing growing concerns about data privacy and integrity in cloud and edge deployments.

Tradeoffs and Limitations do exist. While CUDA Tile offers excellent performance and portability, Cutlass remains available for those seeking the absolute peak performance through architecture-specific, hand-tuned optimizations, albeit at the cost of portability. Developers will need to choose the right tool for the right job, balancing ease of use and portability with ultimate performance ceiling. The initial rollout of confidential computing on Blackwell supports only single GPU pass-through per trusted execution environment, which might limit its applicability for highly demanding multi-GPU secure workloads in the short term, though multi-GPU support is planned. Furthermore, while the driver unification is a significant step, older embedded platforms like Jetson Orin may still experience a slight delay in receiving the absolute latest CUDA features compared to newer architectures like Thor, though NVIDIA is committed to minimizing this delta. The shift towards runtime compilation and MLIR also implies a more dynamic compilation environment, which might require new debugging and profiling strategies compared to traditional static compilation. Despite these minor caveats, the overall direction of CUDA 13.0 points to a future where high-performance GPU computing is more accessible, portable, and robust across NVIDIA's diverse hardware ecosystem.

Key Takeaways

  • CUDA 13.0 is a foundational release for Blackwell, introducing full support for the new architecture and setting the strategic direction for future CUDA development, focusing on developer productivity, portability, and system unification.
  • The CUDA Tile programming model revolutionizes high-performance tensor core programming by offering an intuitive, NumPy-like API that abstracts away hardware specifics, ensuring architecture-agnostic portability and significantly boosting developer productivity.
  • Unified platform and driver architecture across embedded (Jetson) and data center GPUs allows for "write once, run anywhere" development, simplifying deployment and enabling advanced scheduling features like MIG, MPS, and Green Context on embedded devices.
  • Significant advancements in memory management (CDMM, allocators, UVM improvements) and real-time scheduling address critical performance and determinism requirements for diverse applications, from HPC to robotics.
  • Enhanced Python integration provides native access to CUDA APIs and libraries, coupled with streamlined packaging and LLM-based developer tool assistance, making GPU programming more accessible and efficient for Python users.
  • New extended precision (Ozaki technique) capabilities deliver substantial performance speedups for FP32 and FP64 operations while maintaining accuracy, crucial for scientific computing and financial applications.

About the Speaker(s)

The talk was delivered by Rob, a member of the NVIDIA CUDA team. His role involves working directly on the CUDA platform, and he expressed a deep passion for the technology. Throughout the presentation, he demonstrated an in-depth understanding of CUDA's architectural nuances, programming models, and strategic future directions. While a specific title beyond "works with the CUDA team" was not provided, his expertise and enthusiasm for the subject matter were evident.

Reviews

Simon Wisk (Open Source Developer & AI Tooling Expert) — SOLID

A competent and detailed rundown of CUDA 13.0's feature set from someone who clearly knows the platform. The CUDA Tile model is the genuinely interesting bit — it's a real architectural response to a real problem (tensor core portability breaking across generations). But this is a product announcement talk dressed up as an engineering talk, and the article summary doesn't help: it's thin on implementation specifics, benchmarks are hand-wavy, and there's nothing here that would let you actually use any of these features today. Worth watching if you're building kernels for Blackwell; probably skippable otherwise.

Jensen Hitch (AI Compute Platform CEO) — STRONG ACCEPT

CUDA 13.0 is a platform-level release, not a feature drop. The Tile programming model is the right answer to a real structural problem — tensor core complexity has been fracturing the developer base across generations, and rebuilding portability through runtime code generation and MLIR-based compilation is a genuine systems-level solution. The driver unification story matters as much as any single API: when you can write one application and deploy it from a Jetson robot to a GB200 cluster, that changes the economics of how people build AI systems. The talk earns a strong accept because it reasons about the full stack — programming model, compiler IR, memory hierarchy, deployment topology —…

→ Top-rated talks at NVIDIA GTC 2025

All talks from NVIDIA GTC 2025