What Is Vulkan?
Vulkan is a new-generation graphics and compute open standard API that provides high-efficiency, cross-platform access to modern GPUs. Created and evolved by the Khronos® Group standards consortium, Vulkan satisfies the needs of software developers in fields as varied as game, mobile and workstation application development. Vulkan's explicit API design enables efficient implementations on platforms that span a wide range of mobile, console, embedded and desktop hardware using the Windows, Linux and Android operating systems.
Vulkan is an open standard API that the entire industry can cooperatively evolve to provide access to the latest GPU technologies. The API provides a multi-threading-centric design to leverage modern multi-core CPUs, and provide access to GPUs via multiple parallel command queues. Some of the latest Vulkan features include ray tracing, bindless resources and shader programming using GLSL or HLSL. Vulkan is not tied to a specific platform and enables developers to write GPU code that is portable to diverse devices and operating systems.
Vulkan at NVIDIA
NVIDIA provides fully conformant Vulkan 1.2 drivers across our products including Geforce and Quadro on Windows and Linux, Shield Android TV, and the range of Jetson embedded processors using Android or Linux. NVIDIA Nsight™ tools enable developers with cutting-edge Vulkan application debugging, profiling and optimization capabilities.
Vulkan is available across NVIDIA’s products
NVIDIA is deeply engaged at Khronos and the Vulkan Working Group to help drive Vulkan’s evolution through developing vendor extensions to enable developers access the very latest GPU technologies, and encouraging these capabilities to be adopted as cross-vendor Vulkan specifications at the Khronos Working Group.
To help developers get up and running quickly with Vulkan, this page contains information on NVIDIA’s Vulkan drivers, links to the full source code of educational samples and helper libraries, links the downloadable NVIDIA Nsight tools to help you debug and optimise your Vulkan code, and articles and presentations to help you learn more about what Vulkan can do for you!
NVIDIA will be regularly adding new materials on this page - so keep an eye open for the latest updates!
Vulkan Certified Driver Information
For Windows and Linux
When running on Turing or Ampere hardware these drivers include the
The Vulkan Ray Tracing Extensions and theNVIDIA Turing Extensions for Vulkan
NVIDIA provides a growing collection of Vulkan and OpenGL samples and tutorials with full source code available on GitHub. Developers can download the samples that interest them, from educational introductions to basic Vulkan workflows and extensions, through examples of how to render scenes with high geometric complexity and ray tracing,and on to professional application use-cases. The repository also contains utility code that can speed up Vulkan development.
Vulkan Developer Tools
The NVIDIA Nsight Aftermath SDK is a simple library that can be integrated into a game’s crash reporter to generate GPU "mini-dumps" when a GPU hang or exception occurs.Learn More
NVIDIA Nsight Systems is a system-wide analysis tool for visualizing CPU / GPU interactions to help eliminate GPU idle, stutter and CPU bottlenecks. It can trace Vulkan on the CPU & GPU, interoperating GPU APIs, and many CPU or OS events.Learn More
NVIDIA Nsight Graphics enables developers to debug & profile Vulkan applications. With powerful low-level profiling features such as GPU Trace, it's easier than ever to identify GPU performance issues and optimize with confidence.Learn More
RTX Ray Tracing in Vulkan
In November 2020, Khronos released the final versions of the Vulkan Ray Tracing extensions that seamlessly integrate ray tracing into the existing Vulkan framework. Vulkan is the industry’s first open, cross-vendor, cross-platform standard that can be used to access RTX ray tracing acceleration.
Alongside the release of ray tracing support in the Khronos Vulkan SDK in December 2020, NVIDIA now ships the Vulkan Ray Tracing extensions in our production Vulkan drivers . All RTX GPUs are supported, together with GeForce GTX 1660 with 6GB+ of memory and GeForce GTX 1060+ with 6GB+ of memory.
NVIDIA has also released Quake II RTX version 1.4 that uses Vulkan Ray Tracing to significantly enhance the visual quality of this well-loved classic running with ray-traced lighting, shadows, and reflections - making Quake II RTX the world’s first cross-vendor ray tracing Vulkan application! NVIDIA releases the full source code on GitHub serving as a great example for developers who want to dive into the details of how this remastering was achieved.
Getting Started with Vulkan Ray Tracing
A tutorial on how to use Vulkan Ray Tracing to create a complete mini-path tracer using the final Vulkan Ray Tracing extensions
A Vulkan-based glTF ray tracer viewer with open source on GitHub
An updated Vulkan Ray Tracing Tutorial using the final Vulkan Ray Tracing extensions
Blog on Vulkan Ray Tracing Best Practices for Hybrid Rendering as used in Wolfenstein: Youngblood
Read about how the 2020.6 release of the NVIDIA Nsight Graphics tool supports Vulkan Ray Tracing
Vulkan Educational Resources
Vulkan NVIDIA Presentations
NVIDIA Vulkan Features Update - including Vulkan 1.2 and Ray Tracing
Learn about new features available in Vulkan. We'll cover various new Vulkan extensions and their use-cases. We'll also address some of our open-source samples published so far.Watch Video
Modern graphics APIs offer performant low-level access to accelerated ray tracing, but with this control and flexibility comes complexity and nuance that can be a challenge for developers to navigate.Watch Video
- [GTC Fall 2020] Cross-Platform Ray Tracing - Migrating from DXR to Vulkan
- [GTC 2020] NVIDIA Vulkan Features Update - including Vulkan 1.2 and Ray Tracing [s21770]
- [GTC 2020] ProVR: Vulkan and OpenGL Using Quadro GPUs [s21197]
- [GTC 2020] Vulkan and OpenGL Q & A [CWE21750]
- [GTC 2020] Khronos Cross-Platform Standards Update: Vulkan, SPIR-V, OpenXR, glTF and OpenCL [S22158]
- [GTC 2020] Multi-GPU Real-Time Rendering Techniques [s21741]
- [GTC 2020] Ray Traced Reflections in Wolfenstein Youngblood [S22694]
- [GTC 2020] CUDA and Ray Tracing Developer Tools [CWE21165]
- [GTC 2020] Real-Time Ray-Traced Ambient Occlusion of Complex Scenes using Spatial Hashing [S22170]
- [GTC 2019] NVIDIA Vulkan Features Update - Turing Architecture Features [s9909]
- [GTC 2019] NVIDIA VKRay - Ray Tracing in Vulkan [S9833]
- [GTC 2019] Vulkan 1.1 Features for Professional VR and Turing VRWorks [S9891]
- [GTC 2019] NVIDIA Nsight Graphics:Vulkan Profiling and Debugging [S9661]
- [GTC 2019] Real-time Path Tracing and Denoising in "Quake 2" 
- [GTC 2018] Khronos standards update: Vulkan, GLTF, OpenGL and OpenXR for cross-platform VR/AR [S8880]
- [GTC 2018] NVIDIA RTX: Enabling Ray Tracing in Vulkan [S8521]
- [GTC 2017] Vulkan Technology Update [S7191]
- [GTC 2016] Khronos API Standards Update: Including Vulkan and SPIR-V
- [GDC 2016] High-Performance, Low-Overhead Rendering with OpenGL and Vulkan (slides and video)
- [GDC 2016] Vulkan and NVIDIA The Essentials (slides and video)
- [Siggraph 2015] Vulkan on NVIDIA GPUs (slides, video)
- [GTC 2015] Khronos API Standards Update: Including Vulkan, OpenCL 2.1 and SPIR-V (Video)
- [NVIDIA Vulkan Training Day]NVIDIA Vulkan Training Day
- [Khronos Group Vulkan Webinar] Khronos Group Vulkan Webinar
- NVIDIA Vulkan Developer Driver for Khronos Vulkan Spec update 1.0.54
- NVIDIA GDC Vulkan Driver available now!
- Driver and New Sample for VK_NVX_device_generated_commands
- Vulkan Device-Generated Commands
- Getting Vulkan Ready For VR
- What's your Vulkan Memory Type?
- Reading Between The Threads: Shader Intrinsics
- Vulkan Multi-threading at Khronos Munich Chapter Meeting
- Engaging the Voyage to Vulkan
- Vulkan Shader Resource Binding
- Vulkan Memory Management
- OpenGL like Vulkan
- Transitioning from OpenGL to Vulkan
- Tales from the NVIDIA Vulkan Early Access Program
- NVIDIA Corporate Blog Announcing Vulkan
Vulkan Community Resources
- Vulkan Home Page at Khronos.org
- LunarG Vulkan SDK
- RenderDoc Graphics Debugger
- Vulkan GPU Hardware Database
- Khronos Vulkan Educational Resources
- GLFW - Cross Platform API for creating windows and contexts