Vulkan Driver Support NVIDIA Developer

This page provides links to both Vulkan 1.3 general release drivers, and developer beta drivers.

Vulkan 1.3 General Release Driver Downloads
Vulkan 1.3, including support for the Vulkan Ray Tracing extensions, is available for Windows and Linux in our general release drivers here:

Windows
* Download for Windows 11/10

Linux
* Download for Linux 64-bit

NVIDIA SHIELD TV
* Vulkan 1.1 on Android

Vulkan Beta Driver Downloads
Windows driver version 517.83 and Linux driver version 515.49.25 contain newly released Vulkan features and bug fixes for Vulkan developers.Windows 517.83

* Download for Windows 11/10

Linux 515.49.25

* Download for Linux 64-bit

Vulkan Beta Driver Release Notes
The latest Vulkan 1.3 specification can be found here: /registry/vulkan/

NVIDIA provides full Vulkan 1.3 support and functionality on NVIDIA GeForce and Quadro graphics card with one of the following Ampere, Turing, Volta, Pascal and Maxwell (first and second generation) based GPUs:

* Ampere GPU Architecture
* GeForce RTX: GeForce RTX 3090, GeForce RTX 3080 Ti, GeForce RTX 3080, GeForce RTX 3070 Ti, GeForce RTX 3070, GeForce RTX 3060 Ti, GeForce RTX 3060 NVIDIA RTX: NVIDIA RTX A6000, NVIDIA RTX A5000, NVIDIA RTX A4000, NVIDIA RTX A2000
* Turing GPU Architecture
*
* Turing family
*
* Vulkan extensions
*
*
* TITAN: NVIDIA TITAN RTX GeForce RTX: GeForce RTX 2080 Ti, GeForce RTX 2080 SUPER, GeForce RTX 2080, GeForce RTX 2070 SUPER, GeForce RTX 2070, GeForce RTX 2060 SUPER, GeForce RTX 2060 GeForce GTX: GeForce GTX 1660 Ti, GeForce GTX 1660 SUPER, GeForce GTX 1660, GeForce GTX 1650 SUPER, GeForce GTX 1650 Ti, GeForce GTX 1650, GeForce MX250, GeForce MX230 Quadro: Quadro RTX 8000, Quadro RTX 6000, Quadro RTX 5000, Quadro RTX 4000, Quadro RTX 3000, Quadro T2000, Quadro T1000
* Volta GPU Architecture
* TITAN: NVIDIA TITAN V Quadro: Quadro GV100
* Pascal GPU Architecture
* TITAN: NVIDIA TITAN Xp, NVIDIA TITAN X (Pascal) GeForce: GeForce GTX 1080 Ti, GeForce GTX 1080, GeForce GTX 1070 Ti, GeForce GTX 1070, GeForce GTX 1060, GeForce GTX 1050 Ti, GeForce GTX 1050, GeForce GT 1030, GeForce MX150, Quadro: Quadro GP100, Quadro P6000, Quadro P5200, Quadro P5000, Quadro P4200, Quadro P4000, Quadro P3200, Quadro P3000, Quadro P2200, Quadro P2000, Quadro P1000, Quadro P620, Quadro P600, Quadro P520, Quadro P500, Quadro P400
* Maxwell 2 GPU Architecture
* TITAN: GeForce GTX TITAN X GeForce: GeForce GTX 980 Ti, GeForce GTX 980, GeForce GTX 980M, GeForce GTX 970, GeForce GTX 970M, GeForce GTX 965M, GeForce GTX 960, GeForce GTX 950, Quadro: Quadro M GB, Quadro M6000, Quadro M5500, Quadro M5000, Quadro M5000M, Quadro M4000, Quadro M4000M, Quadro M3000M, Quadro M2200, Quadro M2000
* Maxwell 1 GPU Architecture * GeForce: GeForce GTX 960M, GeForce GTX 950M, GeForce 945M, GeForce 940MX, GeForce 930MX, GeForce 920MX, GeForce 940M, GeForce 930M, GeForce GTX 860M, GeForce GTX 850M, GeForce 845M, GeForce 840M, GeForce 830M, GeForce GTX 750 Ti, GeForce GTX 750, GeForce GTX 745, GeForce MX * Quadro: Quadro M2000M, Quadro M1000M, Quadro M600M, Quadro M500M, Quadro M1200, Quadro M620, Quadro M520, Quadro K2200M, Quadro K620M

*

For any bugs or issues, please file a bug through the developer website: /

Vulkan Beta Driver Release Updates
November 17th, Windows 517.83, Linux 515.49.25

* New: * VK_EXT_descriptor_buffer

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.25

October 25th, Windows 517.69, Linux 515.49.24

* Fixes: * Miscellaneous Vulkan video fixes

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.24

September 30th, Windows 517.57, Linux 515.49.19

* New: * VK_EXT_extended_dynamic_state3 support for the following dynamic states: * VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT * VK_DYNAMIC_STATE_POLYGON_MODE_EXT * VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT * VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT * VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT * VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT * VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT * VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT * VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT * VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT * VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT * Provisional Vulkan video extension updates: * VK_KHR_video_queue: 6 -> * Note: these changes are not backwards compatible with the old revisions so applications using the old revisions will need to be updated to continue working

* Fixes: * Fixed regression with mesh shader queries
* Updated OpEmitMeshTasksEXT to be interpreted as a terminator instruction

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.19

September 27th, Windows 517.55, Linux 515.49.18

* New: * VK_EXT_mutable_descriptor_type
* VK_EXT_depth_clamp_zero_one
* Provisional Vulkan video extension updates: * VK_KHR_video_queue: 4 -> * VK_KHR_video_decode_queue: 4 -> * VK_KHR_video_encode_queue: 5 -> * VK_EXT_video_decode_h264: 5 -> * VK_EXT_video_decode_h265: 3 -> * VK_EXT_video_encode_h264: 7 -> * Note: these changes are not backwards compatible with the old revisions so applications using the old revisions will need to be updated to continue working

* Fixes: * Fixed possible multi-threaded pipeline creation stall when VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT is used
* Fixed support for image load/store/atomics with linear images

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.18

September 1st, Windows 517.22, Linux 515.49.15

* New: * VK_EXT_mesh_shader

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.15

August 23rd, Windows 517.17, Linux 515.49.14

* New: * VK_EXT_attachment_feedback_loop_layout
* Added support for chaining VkShaderModuleCreateInfo when creating compute and ray tracing pipelines

* Fixes: * Don’t read pipeline state when it’s not valid for the pipeline library stage
* Fixed issue clearing 3D depth images where the end slice(s) weren’t cleared completely
* Fixed an issue where Vulkan applications would crash when running under Wayland

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.14

July 20th, Windows 516.89, Linux 515.49.10

* New: * VK_EXT_pipeline_robustness

* Fixes: * Restored old shader disk cache behavior to remain enabled even if the app uses its own pipeline cache
* Fixed issue with optimized graphics pipeline library final link using the wrong shaders
* Fixed issue with some fp16 shader operations

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.10

July 2nd, Windows 516.63, Linux 515.49.06

* New: * VK_EXT_shader_module_identifier

* Fixes: * Fixed issue with image copy when one of the formats is a single-plane interleaved video format
* Fixed issue with vkCmdResetEvent on compute queues
* Fixed regression with tessellation mode set be the tessellation control shader
* Fixed issue with underestimate conservative rasterization sometimes not working correctly

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.06

June 17th, Windows 516.48, Linux 515.49.05

* New: * VK_EXT_image_drm_format_modifier [Linux]
* VK_EXT_non_seamless_cube_map

* Fixes: * Fix the depth and stencil clear color for dynamic rendering
* Fix possible corruption when the shading rate image is changed

* open-gpu-kernel-modules release: * /NVIDIA/open-gpu-kernel-modules/releases/tag/515.49.05

May 24th, Windows 473.64, Linux 470.62.30

* New: * VK_KHR_fragment_shader_barycentric

May 10th, Windows 473.60, Linux 470.62.29

* New: * VK_KHR_ray_tracing_maintenance1

April 29th, Windows 473.50, Linux 470.62.28

* New: * VK_EXT_image_2d_view_of_3d
* Updates for the latest Vulkan video extensions revisions: * VK_KHR_video_queue: 2 -> * VK_KHR_video_decode_queue: 2 -> * VK_KHR_video_encode_queue: 3 -> * VK_EXT_video_decode_h264: 3 -> * VK_EXT_video_decode_h265: 1 -> * VK_EXT_video_encode_h264: 3 -> * Note: these changes are not backwards compatible with the old revisions so applications using the old revisions will need to be updated to continue working * vk_video_samples has been updated to the new API

* Fixes: * Fix Optimus layer vkEnumeratePhysicalDevices to not overwrite past the end of the application’s pPhysicalDevices array
* Fix mesh shaders and VK_EXT_graphics_pipeline_library
* Fix pipeline caching issue with VK_EXT_graphics_pipeline_library and VkPipelineShaderStageModuleIdentifierCreateInfoEXT
* Fix driver crash when starting a render pass with a VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT depth attachment without VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT info
* Fix linear render targets when they are very small
* Fix bug with vkCmdSetCullMode not applying when VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY is used

March 29th, Windows 473.33, Linux 470.62.26

* New: * VK_EXT_graphics_pipeline_library
* VK_EXT_primitives_generated_query

January 25th, Windows 473.11, Linux 470.62.22

* New: * Fully conformant Vulkan 1.3 implementation
* Includes full support for Roadmap * VK_KHR_global_priority

January 20th, Windows 473.07, Linux 470.62.20

* New: * VK_NV_linear_color_attachment
* Support revision 1.2.203 of the Vulkan API headers, which has some minor changes to the Vulkan Video API

* Fixes: * Fixed vertexStrideDynamic with VK_NV_device_generated_commands (for real this time)
* Fixed a compiler bug where an optimization pass could generate invalid accesses

December 7th, Windows 472.85, Linux 470.62.16

* Fixes: * Fixed Vulkan Video encode bitstream size and RESULT_WITH_STATUS_BIT_KHR query reporting
* Fixed VK_IMAGE_CREATE_EXTENDED_USAGE_BIT with vkGetPhysicalDeviceImageFormatProperties
* Fixed vertexStrideDynamic with VK_NV_device_generated_commands

November 24th, Windows 472.77, Linux 470.62.13

* New: * VK_EXT_depth_clip_control

* Fixes: * Fixed some unset VkVideoDecodeH264CapabilitiesEXT query fields
* Fixed VK_TIME_DOMAIN_DEVICE_EXT query on SLI platforms

November 17th, Windows 472.69, Linux 470.62.12

* New: * VK_EXT_border_color_swizzle
* VK_EXT_image_view_min_lod
* Vulkan Video APIs updated to 1.2.199 * Updated Vulkan Video Capabilities according to the new Video spec

* Fixes: * Fix for 64-bit atomics not working under some conditions
* Handle VkRenderingFragmentShadingRateAttachmentInfoKHR.imageView with a VK_NULL_HANDLE correctly

November 2nd, Windows 472.55, Linux 470.62.07

* New: * VK_KHR_dynamic_rendering
* Added support for bufferDeviceAddressCaptureReplay [Linux]

* Fixes: * Fixed a regression which prevented DisplayPort and HDMI 2.1 variable refresh rate (VRR) G-SYNC Compatible monitors from functioning correctly in variable refresh rate mode, resulting in issues such as flickering [Linux]
* Optimized the Vulkan fullscreen presentation path for X11 and direct-to-display swapchains [Linux]
* Fixed a compiler bug with Ray Tracing shaders which could cause shader execution timeouts, resulting in device loss
* Treat video encode VUI parameters as optional to avoid driver crash when they are omitted, which is valid usage

October 6th, Windows 472.33, Linux 470.62.05

* New: * VK_KHR_format_feature_flags2
* VK_KHR_maintenance4
* Vulkan video updates: * Update the VK_KHR_video_queue implementation to properly support VK_QUERY_TYPE_RESULT_STATUS_ONLY video queries * Improve the support for VK_KHR_video_decode_queue out-of-order parallel command buffer recording for the video decode operations

* Fixes: * Fixed issue with vkCmdBindDescriptorSets and unreferenced dynamic UBO/SSBO descriptors
* Fixed issue with FragCoord and Centroid qualifier
* Fixed an issue where unreferenced descriptor bindings were sometimes not ignored properly
* Fixed a bug where VK_NVX_binary_import was advertised as supported on unsupported platforms which caused calls to vkCreateDevice to fail if applications attempted to enable VK_NVX_binary_import on such platforms

September 7th, Windows 472.02, Linux 470.62.02

* New: * VK_KHR_shader_integer_dot_product
* VK_EXT_direct_mode_display [Windows]
* VK_EXT_load_store_op_none
* VK_EXT_pageable_device_local_memory [Windows]
* VK_EXT_primitive_topology_list_restart

* Fixes: * Fixed issue with vertex shader interpolation qualifiers of unused input attributes
* Fixed issue with host-visible device local memory and capture/replay
* Fixed issue accessing individual components of barycentric inputs

August 6th, Windows 471.69, Linux 470.56.05

* New: * VK_KHR_present_id
* VK_KHR_present_wait
* VK_KHR_shader_subgroup_uniform_control_flow
* VK_EXT_global_priority_query
* VK_EXT_multi_draw
* VK_EXT_physical_device_drm [Linux]
* VK_EXT_queue_family_foreign
* VK_NV_ray_tracing_motion_blur

May 13th, Windows 458.36, Linux 455.50.19

* New: * VK_EXT_provoking_vertex

* Fixes: * Added support for Vulkan provisional video session picture parameters objects

April 19th, Windows 458.20, Linux 455.50.14

* New: * VK_EXT_extended_dynamic_state2

April 13th, Windows 458.17, Linux 455.50.12

* New: * Provisional Vulkan Video extensions: * An introduction to Vulkan Video * Vulkan Video sample * VK_KHR_video_queue * VK_KHR_video_decode_queue * VK_KHR_video_encode_queue * VK_EXT_video_decode_h * VK_EXT_video_decode_h * VK_EXT_video_encode_h * VK_NV_video_queue * VK_EXT_color_write_enable
* VK_EXT_vertex_input_dynamic_state
* VK_EXT_ycbcr_2plane_444_formats
* VK_NV_inherited_viewport_scissor

March 4th, Windows 458.06, Linux 455.50.10

* Fixes: * Fixed an issue with vkCmdSetViewport when firstViewport is non-zero
* Fixed a memory fault when using some smaller dimensions of sparse images
* Fixed an issue where vkCreate{Graphics,Compute}Pipeline would sometimes crash when the shaders contained resources with no set/binding
* Fixed corruption that sometimes occured with shadow rendering with image arrays
* Fixed a bug with the host-visible device-local memory heap, where if an allocation failed due to space constraints, it could cause the application to crash on future Vulkan function calls
* Fixed a potential crash when clearing images with multiple layers
* Fixed a bug where using ray tracing extensions on multi-GPU setups could result in application instability if the GPUs did not match [Linux]
* Fixed a bug where vkCreateSwapchain could cause the X Server to crash when an invalid imageFormat was provided [Linux]

February 15th, Windows 457.96, Linux 455.50.07

* New: * VK_KHR_synchronization2

* Fixes: * Fixed handling of VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT for variable size descriptor bindings
* Fixed the present tearing that occured in some situations [Windows]

February 2nd, Windows 457.91, Linux 455.50.05

* Fixes: * Fixed bug with indexed ray payloads
* Fixed a bug where calls to vkCreateDevice could fail on Ampere GPUs when ray tracing extensions were enabled and the application was running within the Steam Linux Runtime [Linux]

January 27th, Windows 457.88, Linux 455.50.04

* Fixes: * Fixed a bug in a stencil-buffer optimization that could occasionally result in VK_ERROR_DEVICE_LOST

January 25th, Windows 457.84, Linux 455.50.03

* New: * VK_KHR_workgroup_memory_explicit_layout
* VK_KHR_zero_initialize_workgroup_memory

January 19th, Windows 457.83, Linux 455.50.02

* New: * Support for linear images in host-visible video memory

* Fixes: * Fixed a crash Vulkan swapchain initialization on older versions of Windows 10 [Windows]
* Fixed VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT semaphore export support [Windows]
* Fixed an issue with OpenGL where imported Vulkan buffers would fail with GL_OUT_OF_MEMORY when marked as resident [Linux]

December 16th, Windows 457.67, Linux 455.46.04

* New: * VK_NV_acquire_winrt_display [Windows]

* Fixes: * Fixed a crash from vkCreateGraphicsPipelines when certain blend operations were used with scalar outputs from the fragment shader
* Fixed the X driver’s composition pipeline (used, e.g., for X desktop rotation, “ForceCompositionPipeline”, and some OpenGL Swap Group configurations) to correctly preserve color precision in depth 30 [Linux]

November 23rd, Windows 457.44, Linux 455.46.02

* New: * The official release of Khronos Vulkan Ray Tracing for Pascal 6GB GPUs and above: * VK_KHR_acceleration_structure * VK_KHR_ray_tracing_pipeline * VK_KHR_ray_query [RTX GPUs] * VK_KHR_pipeline_library * VK_KHR_deferred_host_operations * SPV_KHR_ray_tracing * SPV_KHR_ray_query [RTX GPUs] * GLSL_EXT_ray_tracing * GLSL_EXT_ray_query [RTX GPUs] * GLSL_EXT_ray_flags_primitive_culling * For Vulkan Ray Tracing samples and tutorials see /nvpro-samples/vk_raytracing_tutorial_KHR

November 11th, Windows 457.33, Linux 455.46.01

* New: * VK_NV_fragment_shading_rate_enums

* Fixes: * Perform fragment depth value clamping to [0,1] when the application doesn’t enable VK_EXT_depth_range_unrestricted

November 2nd, Windows 457.17, Linux 455.34.01

* New: * NVIDIA GeForce RTX 3070 support

* Fixes: * Fixed an issue with VK_ACCESS_MEMORY_{READ,WRITE}_BITs when used as part of a render pass
* Fixed an issue where Vulkan applications would fail to initialize if the connected X11 Server did not expose support for GLX [Linux]

October 20th, Windows 457.00, Linux 455.26.02

* New: * VK_KHR_fragment_shading_rate
* VK_KHR_shader_terminate_invocation

October 9th, Windows 456.80, Linux 455.26.01

* Fixes: * Reduce host memory consumption for descriptor memory when VkDescriptorSetVariableDescriptorCountAllocateInfo is used
* Handle SPIR-V 1.4 non-Input/Ouput entry point variables correctly
* Fixed a blending optimization that sometimes produced an incorrect result
* Fixed SPIR-V intersection shader compilation issue when multi entry point ray tracing modules are used

September 29th, Windows 456.62, Linux 455.22.04

* New: * Rebased to r455 driver branch, which adds Ampere GPU family support
* VK_EXT_global_priority support for Windows 10 with hardware scheduling enabled * Application needs to have the SeIncreaseBasePriorityPrivilege enabled to get higher priorities * VK_EXT_shader_image_atomic_int * VK_KHR_copy_commands2
* Allow importing external host memory as cached

* Fixes: * Fixed a bug in a barrier optimization that allowed some back-to-back copies to run unordered

September 9th, Windows 452.28, Linux 450.56.11

* Fixes: * Fixed a bug in a SPIR-V optimization that may cause conditional blocks to not execute
* Fixed a bug where calls to vkGetRandROutputDisplayEXT with unexpected inputs would generate X11 protocol errors [Linux]

August 7th, Windows 451.98, Linux 450.56.06

* New: * VK_EXT_4444_formats

July 20th, Windows 451.79, Linux 450.56.02

* New: * VK_EXT_image_robustness
* VK_EXT_shader_atomic_float

* Fixes: * Fixed flipping behavior of X11 swapchains that have more than 2 images [Linux]

July 9th, Windows 451.74, Linux 450.56.01

* New: * Rebased beta driver to r450 driver release branch
* Added support for the VkPhysicalDeviceRayTracingFeaturesKHR.rayTracingIndirectTraceRays ray tracing feature
* VK_NV_device_diagnostics_config

* Fixes: * Make the pSizes parameters of vkCmdBindVertexBuffers2EXT be relative to the pBuffers+pOffsets
* Fixed potential crash in the first vkQueuePresentKHR() call after creating a new VkSwapchainKHR with a non-NULL oldSwapchain
* Fixed potential crash in vkCmdBeginRenderPass() when using VK_EXT_sample_locations

June 23rd, Windows 443.41, Linux 440.66.17

* New: * VK_EXT_extended_dynamic_state
* VK_EXT_external_memory_host [Linux]

* Fixes: * Improved performance of vkCmdMultiDraw*IndirectCount on Pascal and earlier GPUs

May 26th, Windows 443.24, Linux 440.66.15

* Fixes: * Fixed 16-bit SMin/SMax
* CPU performance improvements for VkFence creation and usage [Linux]
* Fixed a bug where vkUpdateDescriptorSetWithTemplate would ignore the stride parameter for some VkDescriptorType values
* Fixed an issue with the Optimus layer selecting the iGPU when there was an application profile with Auto-select as the preferred graphics processor [Windows]
* Fixed layout of compute shader shared memory that may have resulted in a compiler crash
* Fixed a bug where vkCreateSampler would fail with no borderColor data, even though it wasn’t needed
* Fixed a compiler issue processing image operation with extra unused coordinate operand components
* Fixed writing to dynamically indexed vec2 and vec3 fragment color outputs

May 11th, Windows 443.15, Linux 440.66.14

* New: * Added support for the VkPhysicalDeviceRayTracingFeaturesKHR.rayTracingPrimitiveCulling ray tracing feature

* Fixes: * Fixed the returned pCheckpointDataCount value for vkGetQueueCheckpointDataNV when there are less than the requested values
* Process the VkTimelineSemaphoreSubmitInfo structure correctly for vkQueueBindSparse
* Fixed vec3 immediate indexing in ray tracing shaders

May the 4th, Windows 443.09, Linux 440.66.12

* New: * VK_EXT_custom_border_color
* VK_EXT_private_data
* VK_EXT_robustness2

* Fixes: * Fixed a visual glitch with Vulkan applications when falling out of flipping on certain desktops such as GNOME [Linux]

April 24th, Linux 440.66.11

* Fixes: * Fixed several synchronization bugs that could momentarily lock up the X server when moving/resizing/focusing OpenGL and Vulkan windows when PRIME Sync is enabled [Linux]
* Fixed a bug which caused horizontal lines to corrupt full screen Vulkan applications [Linux]

April 18th, Windows 442.98, Linux 440.66.09

* New: * Added support for more acceleration structure vertex formats

* Fixes: * Fixed some VkPhysicalDeviceRayTracingFeaturesKHR to be advertised correctly for the current GPU
* Fixed potential crash when pipeline pInputAssemblyState is NULL for mesh shaders
* Fixed memory alignment and type for ray tracing scratch memory
* Fixed some issues with ray tracing queries
* Fixed an issue with ray tracing pipeline creating with pipeline libraries
* Fixed some window state transitions when using HDR [Windows]

April 2nd, Windows 442.88, Linux 440.66.08

* New: * Added beta support for Ray Queries * VkPhysicalDeviceRayTracingFeaturesKHR.rayQuery is now VK_TRUE * SPIR-V: SPV_KHR_ray_query * GLSL: GLSL_EXT_ray_query

* Fixes: * Improve performance of large host-visible VkDeviceMemory allocations
* Fixed YCbCr copy of multi-plane images

April 1st, Windows 442.86, Linux 440.66.07

* New: * Multi thread-capable deferred ray tracing pipeline creation
* Allow presenting from queue families which only expose VK_QUEUE_COMPUTE_BIT when using XCB in addition to Xlib surfaces [Linux]

* Fixes: * Added a workaround for Linux Steam Play title DOOM Eternal, which overrides application requested memory locations, to ensure performance-critical resources be placed in video memory [Linux]
* Correctly cap the drawCount for vkCmdDrawIndirectCount and vkCmdDrawIndexedIndirectCount on Turing GPUs
* Fixed descriptor indexing with large arrays and large blocks

March 24th, Windows 442.81, Linux 440.66.04

* Fixes: * Fixed handling of offsets in VkAccelerationStructureBuildOffsetInfoKHR
* Fixed a bug which could cause DXVK applications to crash when running on Optimus laptops [Windows]

March 19th, Windows 442.77, Linux 440.66.03

* Fixed: * Fix for geometry flags in VK_KHR_ray_tracing

March 17th, Windows 442.75, Linux 440.66.02

* New: * Multi-vendor Vulkan ray tracing * VK_KHR_ray_tracing * VK_KHR_deferred_host_operations * VK_KHR_pipeline_library * For details see the Ray Tracing in Vulkan blog post * VK_EXT_pipeline_creation_cache_control
* VK_NV_device_generated_commands * For details see the new device generated command technical blog * Replaces the now deprecated VK_NVX_device_generated_commands * Added support for a new device-local VkMemoryType which is host-coherent and host-visible

* Fixes: * Fixes for HDR presentation on Windows

February 19th, Linux 440.58.02

* Fixed: * Fixed a regression which added syntax errors into the default application profiles configuration file [Linux]

February 15th, Windows 442.36, Linux 440.58.01

* New: * VK_KHR_shader_non_semantic_info
* VK_EXT_tooling_info

* Fixed: * Fixed a regression which caused some Vulkan titles to crash on swapchain recreation. This was known to affect the following Vulkan titles [Linux]: * F * Rise of the Tomb Raider * DiRT * Fixed a visual glitch of Vulkan applications when falling out of flipping (such as when doing alt-tab) [Linux] * We are still investigating a glitch that reproduces with the GNOME desktop

January 15th, Windows 441.99, Linux 440.48.02

* New: * Vulkan 1.2 passing vulkan-cts-1.2.1.0 conformance * Full Vulkan 1.2 support including timeline semaphores, descriptor indexing, buffer device address and SPIR-V 1. * Add PRIME Synchronization support for Linux kernel 5.4 and newer

January 8th, Windows 441.97, Linux 440.43.02

* Fixes: * Fixed a bug that caused DXVK titles to endlessly loop during shader compilation if no OpSource instruction was present
* Fixed a build failure “fatal error: drm/drmP.h: No such file or directory” when building for Linux 5.5 release candidates
* Other minor fixes

December 11th, Windows 441.71, Linux 440.43.01

* New: * Rebased Vulkan beta driver to r440 release branch

* Fixes: * Fix rendering to 3D depth/stencil image slices
* Improvements to Vulkan driver startup time
* Fixed various resource leaks

November 25th, Windows 436.65, Linux 435.27.08

* New: * VK_KHR_buffer_device_address

November 14th, Linux 435.27.07

* Fixes: * Fixed a bug that caused graphical corruption, reducing visibility in caves, in Steam Play title Assassin’s Creed: Odyssey
* Fixed a bug that caused applications running directly on a display (such as VR HMDs) to tear when a G-SYNC or G-SYNC Compatible monitor is plugged in the system

November 13th, Windows 436.64, Linux 435.27.06

* Fixes: * Fixed memory leak after destroying ray tracing pipeline
* Improved responsiveness of X11 driver when ‘NVIDIA: Wait for channel idle timed out’ messages occur
* Improved Windows fullscreen exclusive support for non-primary monitors
* Improved Windows G-Sync support for borderless windows
* Further improvements when system is under low-memory stress on Windows

November 4th, Windows 436.61, Linux 435.27.03

* New: * VK_KHR_separate_depth_stencil_layouts

* Fixes: * Improved behavior in low-memory situations
* Fixed graphical corruption in Vulkan game F * Various minor performance improvements
* Improved Vulkan HDR support for multi-device configurations

October 25th, Windows 436.59, Linux 435.27.02

* New: * Added HDR10 passthrough presentation format and color space for Windows 10 RS2+ * VkFormat – VK_FORMAT_A2B10G10R10_UNORM_PACK * VkColorSpaceKHR – VK_COLOR_SPACE_HDR10_ST2084_EXT * Added support for the __GL_SYNC_DISPLAY_DEVICE environment variable for Linux Vulkan applications

* Fixes: * Improved bounds checking and stability for some content
* Improved unused memory reclamation when running low on system memory for Linux
* General performance improvements

October 13th, Windows 436.56, Linux 435.27.01

* New: * VK_KHR_spirv_1_4

* Fixes: * Fix tearing with mailbox present mode on Windows 10 laptops and SLI platforms

October 7th, Windows 436.52, Linux 435.27.00

* New: * VK_KHR_shader_clock
* VK_KHR_timeline_semaphore

September 18th, Windows 436.39, Linux 435.24.02

* New: * VK_KHR_shader_subgroup_extended_types

* Fixes: * Fixed a regression introduced in 435.19.02 that would cause some applications which use the VK_KHR_display extension to segmentation fault

September 6th, Linux 435.19.03

* Fixes: * Fixed a bug which caused corruption in the following DXVK titles: * Saints Row IV * Saints Row: The Third * Fall back to system memory when video memory is full for some driver-internal allocations. * This can help fix Xid 13 and Xid 31 cases when video memory is full.

August 29th, Windows 436.20, Linux 435.19.02

* New: * Rebased Vulkan beta driver features to the latest 436.15 (Windows) and 435.17 (Linux) general release drivers
* 8-bit integer support added to VK_NV_cooperative_matrix * See here for more info

* Fixes: * General performance imporvements from 436.15 and 435.17

August 12th, Windows 426.06, Linux 418.52.20

* New: * VK_KHR_pipeline_executable_properties

* Fixes: * Improved reporting of Xid errors to include the process ID (PID) of the process responsible for the error

July 29th, Windows 426.02, Linux 418.52.18

* New: * VK_EXT_index_type_uint8
* VK_EXT_line_rasterization
* VK_EXT_subgroup_size_control

July 17th, Linux 418.52.17

* Fixes: * Fixed a bug that could cause heapUsage values reported by VK_EXT_memory_budget to not immediately update after vkFreeMemory was called

July 8th, Windows 425.94, Linux 418.52.16

* New: * VK_KHR_imageless_framebuffer

* Fixes: * Improved compatibility with recent Linux kernel release candidates

July 1st, Windows 425.89, Linux 418.52.14

* New: * VK_EXT_calibrated_timestamps (Linux)
* VK_EXT_full_screen_exclusive
* VK_EXT_shader_demote_to_helper_invocation
* VK_EXT_texel_buffer_alignment

* Fixes: * Improved compatibility with recently released Linux kernels

June 1st, Windows 425.62, Linux 418.52.10

* New: * VK_EXT_fragment_shader_interlock
* VK_EXT_calibrated_timestamps (Windows)
* VK_NV_shader_sm_builtins

* Fixes: * Fixes crash when changing presentMode between swapchains

May 22nd, Windows 425.58, Linux 418.52.07

* New: * VK_KHR_uniform_buffer_standard_layout
* VK_EXT_separate_stencil_usage

April 19th, Windows 425.42, Linux 418.52.05

* New: * VK_PRESENT_MODE_IMMEDIATE_KHR present mode is now available for Windows
* VK_NV_ray_tracing is now available on the following non-RTX GPUs: * Pascal: TITAN Xp, TITAN X, GeForce GTX 1080 Ti, GeForce GTX 1080, GeForce GTX 1070 Ti, GeForce GTX 1070, GeForce GTX GB * Volta: TITAN V * Turing: GeForce GTX 1660 Ti, GeForce GTX * VK_NV_coverage_reduction_mode * Extension specification will be available soon.

* Fixes: * Fix bug in vkCmdCopyImage with compressed images and some non-zero mipmap level dimensions
* Fix bug with OpPhi and relaxed precision
* Some minor performance improvements

April 10th, Windows 425.30, Linux 418.52.03

* New: * VK_EXT_pipeline_creation_feedback
* VK_KHR_surface_protected_capabilities

* Fixes: * Performance improvement for some content on Windows laptops
* Fix rare startup instability on Windows

March 16th, Windows 419.62, Linux 418.49.04

* New: * VK_EXT_host_query_reset
* VK_EXT_ycbcr_image_arrays

March 1st, Windows 419.34, Linux 418.42.02

* Fixes: * Fixes intermittent crash on startup with some content on Windows
* Fixed a bug which could cause the compiler to crash in some Vulkan games

February 19th, Windows 419.09, Linux 418.31.03

* New Extensions: * VK_NV_cooperative_matrix
* VK_EXT_depth_clip_enable

* Fixes: * Hitman 2 visual corruption on Linux when running with dxvk translation
* Total War Warhammer II crash or hang when using Alt-Tab on Linux

January 6th, Windows 417.63, Linux 415.22.05

* New Extensions: * VK_KHR_depth_stencil_resolve
* VK_EXT_buffer_device_address
* VK_EXT_memory_budget
* VK_EXT_memory_priority (Windows only)
* VK_EXT_pci_bus_info

* Improvements: * Better pipeline creation performance when there is a cache hit

December 14th, Windows 417.42, Linux 415.22.01

* Improvements: * Expose two transfer queues on Pascal and above
* Increase maximum point size to * Increate maximum line width to * Fixes: * Fixed issue with vkCmdDrawIndirectCountKHR and vkCmdDrawIndexedIndirectCountKHR and very large counts.
* Fixed issue with Sascha Willems “pushconstants” example.

December 2nd, Windows 417.23, Linux 415.18.04

* New Extensions: * VK_KHR_shader_float16_int8
* VK_KHR_shader_float_controls

* Fixes: * Fixes regression with Unity games on Linux

November 28th, Windows 417.17, Linux 415.18.02

* Turing support
* New Extensions: * VK_KHR_swapchain_mutable_format
* VK_EXT_scalar_block_layout

* Fixes: * VK_EXT_transform_feedback bug fixes

October 14th, Windows 399.41, Linux 396.54.09

* New Extensions: * VK_EXT_external_memory_host (Windows only)
* VK_EXT_transform_feedback

September 19th, Windows 399.32, Linux 396.54.06

* New Extensions: * VK_KHR_driver_properties
* VK_KHR_shader_atomic_int64

* Bug fixes: * Corruption workaround for DX content running on Vulkan

September 10th, Windows 399.28, Linux 396.54.05

* New Extensions: * VK_KHR_vulkan_memory_model
* VK_EXT_inline_uniform_block

August 31st, Windows 399.17, Linux 396.54.02

* New Extensions: * VK_EXT_swapchain_colorspace (Windows only)
* VK_EXT_hdr_metadata (Windows only)

* Bug fixes: * VK_EXT_vertex_attribute_divisor has been updated to version * Entry point queries for VK_EXT_conditional_rendering have been fixed
* Missing primitives with some DXVK content has been fixed

August 7th, Windows 398.91, Linux 396.51.02

* New Extensions: * VK_NV_device_diagnostic_checkpoints

* Bug fixes: * Fix hang that sometimes occurs after a clear in multisample rendering
* Fix hang that sometimes occurs when doing a modeswitch while fullscreen
* Other minor driver and SPIR-V compiler bug fixes

July 12th, Windows 398.58, Linux 396.24.10

* New Extensions: * VK_KHR_8bit_storage
* VK_KHR_create_renderpass2
* VK_EXT_conditional_rendering

* Bug fixes: * Fixed an intermittent hang of Vulkan applications running fullscreen when flipping is allowed on Linux
* Various other driver and compiler fixes

May 24th, Windows 397.96, Linux 396.24.02

* Increased maxBoundDescriptorSets limit from 8 to 32
* New Extensions: * VK_KHR_draw_indirect_count
* VK_EXT_global_priority (Linux only)
* VK_KHR_get_display_properties2 (Linux only)

* Bug fixes: * Improved stability with Wine on Linux
* Improve stability of Vulkan on pre-Pascal GPUs
* Emulate DX shader behavior when necessary
* Bounds-checking for SSBO variable pointer loads

May 11th, Windows 397.76, Linux 396.18.11

* Pick up the latest fixes from general release driver 397.64

May 7th, Linux 396.18.08

* Fix for the Alt-Tab freeze with DXVK

May 3rd, Windows 397.54, Linux 396.18.07

* Shader compiler bug fixes

April 25th, Windows 397.40, Linux 396.18.05

* Windows driver feature parity with Linux 396.18.02
* Bug fixes

April 17th, Linux 396.18.02

* New Extensions * VK_EXT_descriptor_indexing

* Increased several resource limits, notably: * maxPerStageDescriptorUniformBuffers: 12 -> * maxPerStageDescriptorSamplers: 4,000 -> 1,048, * maxPerStageDescriptorSampledImages: 16,384 -> 1,048, * maxPerStageDescriptorStorageBuffers: 4,096 -> 1,048, * And many others

* Shader performance improvements

March 30th, Windows 389.20, Linux 387.42.06

* New Extensions * VK_EXT_vertex_attribute_divisor
* VK_NV_shader_subgroup_partitioned

March 7th, Windows 389.10, Linux 387.42.05

* Full support for Vulkan 1.1
* New Extensions
* VK_KHR_device_group_creation VK_KHR_device_group VK_KHR_maintenance3 VK_KHR_multiview
* Updated loader to VulkanRT-1.1.70

January 5th, Windows 388.84, Linux 387.42.01

* VK_EXT_conservative_rasterization

September 28th, Windows 383.18, Linux 381.26.20

* Full-screen flipping for Linux * Improved performance of fullscreen Vulkan applications using X11 swapchains. This optimization will cause more events that trigger an out-of-date swapchain, such as when entering or leaving fullscreen mode. This is commonly encountered when using the alt-tab key combination, for example. Applications that do not properly respond to the VK_ERROR_OUT_OF_DATE_KHR return code may not function properly when these events occur. See section 30.8 of the Vulkan specification.
* Known issue with Quadro and non-composited desktops under some situations. Possible workarounds: * Disable flipping in nvidia-settings (uncheck “Allow Flipping” in the “OpenGL Settings” panel) * Disable UBB (run ‘nvidia-xconfig –no-ubb’) * Use a composited desktop

* Bug fixes * NVX_multiview_per_view_attributes and geometry passthrough shaders
* Fix subpass dstSubpass=VK_SUBPASS_EXTERNAL handling
* Fix vkRegisterObjectsNVX and VK_EXT_sample_
* Fix handling of SPIR-V SSBO layout qualifiers on members
* Fix atomic operations on some 64-bit types

September 15th, Windows 383.12, Linux 381.26.17

* New Extensions * VK_KHR_maintenance2
* VK_KHR_bind_memory * VK_KHR_image_format_list
* VK_KHR_sampler_ycbcr_conversion
* VK_EXT_sample_locations

* Removed KHX extensions * VK_KHX_external_memory_capabilities
* VK_KHX_external_memory
* VK_KHX_external_memory_fd
* VK_KHX_external_memory_win * VK_KHX_external_semaphore_capabilities
* VK_KHX_external_semaphore
* VK_KHX_external_semaphore_fd
* VK_KHX_external_semaphore_win * VK_KHX_win32_keyed_mutex

* Updated Vulkan loader to 1.0.61.0
* Minor bug fixes

August 16th, Windows 382.96, Linux 381.26.13

* New Extensions * VK_EXT_shader_viewport_index_layer

* Updated Vulkan loader to 1.0.57.0
* Fixed potential hang with some semaphore usage patterns
* Fixed issue with VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NVX and dynamicCount
* Other minor bugs fixed

July 31st, Windows 382.88, Linux 381.26.11

* New Extensions * VK_KHR_relaxed_block_layout
* VK_EXT_depth_range_unrestricted
* VK_EXT_post_depth_coverage

* Fixed crash with large sparse images

July 14th, Windows 382.83

* Fixed issue with unused compute queue
* Other minor bug fixes

July 13th, Linux 381.26.08, Windows 382.81

* New extensions: * VK_KHR_16bit_storage
* VK_KHR_dedicated_allocation
* VK_KHR_external_fence
* VK_KHR_external_fence_capabilities
* VK_KHR_external_fence_fd
* VK_KHR_external_fence_win * VK_KHR_external_memory
* VK_KHR_external_memory_capabilities
* VK_KHR_external_memory_fd
* VK_KHR_external_memory_win * VK_KHR_external_semaphore
* VK_KHR_external_semaphore_capabilities
* VK_KHR_external_semaphore_fd
* VK_KHR_external_semaphore_win * VK_KHR_get_memory_requirements2
* VK_KHR_storage_buffer_storage_class
* VK_KHR_variable_pointers
* VK_KHR_win32_keyed_mutex

* Updated VulkanRT loader to 1.0.54.0
* Various performance improvements and bug fixes

June 30th, Windows 382.71, Linux 381.26.06

* Various performance improvements and bug fixes

June 27th, Windows 382.68, Linux 381.10.10

* New extensions: * Vulkan/OpenGL interop: * GL_EXT_memory_object * GL_EXT_memory_object_win * GL_EXT_memory_object_fd * GL_EXT_semaphore * GL_EXT_semaphore_win * GL_EXT_semaphore_fd * GL_EXT_win32_keyed_mutex * VK_EXT_blend_operation_advanced (Maxwell)
* VK_NV_framebuffer_mixed_samples (Maxwell)

* Updated VulkanRT loader to 1.0.51.0
* Various performance improvements and bug fixes

June 9th, Windows 382.58, Linux 381.26.03

* New extensions: * VK_KHR_get_surface_capabilities * VK_EXT_sampler_filter_minmax (Maxwell)
* VK_NV_fill_rectangle (Maxwell)
* VK_NV_fragment_coverage_to_color (Maxwell)

* Updated VulkanRT loader to 1.0.49.0
* Various performance improvements

March 27th, Windows 377.14, Linux 375.27.15

* SPIR-V compiler bug fixes
* Updated Vulkan loader to version 1.0.42.1

March 15th, Windows 377.07

* Bug fixes

March 8th, Linux 375.27.14, Windows 377.06

* Bug fixes

February 28th, Linux 375.27.13, Windows 377.01

* Fix issue with SteamVR shaders

February 27th, Linux 375.27.12, Windows 376.98

* Beta support for the following new extensions:Descriptor Set Extensions * VK_KHR_push_descriptor
* VK_KHR_descriptor_update_template Cross process interop extensions: * VK_KHX_external_memory
* VK_KHX_external_memory_capabilities
* VK_KHX_external_memory_fd
* VK_KHX_external_memory_win * VK_KHX_external_semaphore
* VK_KHX_external_semaphore_capabilities
* VK_KHX_external_semaphore_fd
* VK_KHX_external_semaphore_win * VK_KHX_win32_keyed_mutex Multi-GPU extensions: * VK_KHX_device_group
* VK_KHX_device_group_creation Multiview and VR related extensions: * VK_KHX_multiview
* VK_NVX_multiview_per_view_attributes
* VK_NV_viewport_swizzle (Maxwell)
* VK_NV_viewport_array2 (Maxwell)
* VK_NV_geometry_shader_passthrough (Maxwell)
* VK_NV_clip_space_w_scaling (Pascal) Other extensions: * VK_NV_sample_mask_override_coverage (Maxwell)
* VK_EXT_discard_rectangles

* Bug fixes to improve compatibility with shaders generated from HLSL

February 9th, Linux 375.27.10

* Bug fixes

February 1st, Linux 375.27.08, Windows 376.80

* Bug fixes

January 23rd, Linux 375.27.07, Windows 376.71

* Beta support for the new Vulkan extensions: * VK_KHR_get_physical_device_properties2
* VK_KHR_maintenance1
* VK_KHR_shader_draw_parameters
* VK_EXT_shader_ballot
* VK_EXT_shader_group_vote

January 10th, Linux 375.27.03, Windows 376.66

* Vulkan beta drivers with experimental API interop features

July 6th, Windows 368.69

* Public GeForce Game Ready drivers

June 13th, Linux 367.27

* Linux Display Driver

May 23rd, Windows 368.22, Linux 367.18

* Public GeForce Game Ready drivers
* Bug fixes and performance improvements

May 13th, Windows 365.19, Linux 364.19

* Public GeForce Game Ready drivers
* Bug fixes and performance improvements

April 8th, Windows 364.91, Linux 364.16

* Updated Vulkan API to 1.0.8
* Improve pipeline creation performance and multi-threaded scaling
* Increase our maximum bound descriptor sets from 4 to 8
* Add support for asynchronous transfer queue
* Improve VK_EXT_debug_report messages on incorrect API usage and shader compile failure
* Fix VkImageFormatProperties maxMipLevels property
* Reduce VkPhysicalDeviceLimits bufferImageGranularity requirement on GM20x GPUs
* Improve Vulkan support on Optimus platforms
* Fixes for minor driver and SPIR-V compiler bugs

March 28th, Windows 364.72

* Update Vulkan API to 1.0.5
* Various performance improvements
* Various bug fixes

March 21st, Linux 364.12

* Linux UDA drivers

March 10th, Windows 364.51

* Windows WHQL drivers

March 2nd, Windows 356.45, Linux 355.00.29

* Support Vulkan API version v1.0.4
* Fix device lost issue with some MSAA resolves
* Fix vkGetQueryPoolResults() when queryCount=0
* Fix OpImageQuerySample with images
* Fix OpVectorExtractDynamic issues with doubles
* Fix handling of sparse image miptail when the whole image fits within a page
* Improve vkAcquireNextImageKHR() conformance to WSI spec
* Improve GL_KHR_vulkan_glsl compatibility when using GLSL directly
* Improve GPU texturing performance in some cases
* Improve vkAllocateDescriptorSets()/vkFreeDescriptorSets() performance in some cases
* Improve vkCmdBindDescriptorSets() performance in some cases
* Improve vkCmdCopyImage() performance in some cases

February 23rd, Windows 356.43, Linux 355.00.28

* Add support for 64-bit vertex attribute formats
* Improve performance of vkBindBufferMemory, vkBindImageMemory and vkCreateGraphicsPipelines
* No longer enumerate Fermi based GPUs in vkEnumeratePhysicalDevices
* Improved compatibility with recent Linux kernels

February 18th, Linux 355.00.27

* New: * GL_NV_draw_vulkan_image
* VK_NV_glsl_shader

* Fixes: * Linux: Fixed issue with vkAllocateMemory() crashing under some circumstances

Vulkan on NVIDIA Hardware FAQ
1) How do I start using Vulkan in my code base?
NVIDIA Vulkan developer page /Vulkan is a great place to start. You can learn from Vulkan presentations and articles as well as NVIDIA demos and SDK samples.

2) Is NVIDIA going to continue to support OpenGL in the future?
NVIDIA is fully committed to invest in OpenGL that our ISVs rely on and will continue to support and improve it. NVIDIA believes in providing maximum functionality with minimal churn to developers. Hence, NVIDIA fully supports both Vulkan and OpenGL.

3) Is NVIDIA Vulkan driver conformant?
Yes, the beta drivers typically pass the latest version of Vulkan conformance. Current conformance status can be found at /conformance/.

4) Does NVIDIA support Vulkan on Linux for Tegra?
Yes. Linux for Tegra drivers can be found at /embedded/linux-tegra.

5) Does NVIDIA support Vulkan on Android?
Yes. See /vulkan-android for details about NVIDIA Vulkan Android drivers for SHIELD devices.