Vulkan Driver Support
This page provides links to both Vulkan 1.1 general release drivers, and Vulkan 1.2 developer beta drivers.
Vulkan 1.1 General Release Driver Downloads
Vulkan 1.1 support is available for Windows and Linux in our general release drivers available here:
Windows
- Download for Windows 8 and 7 (64-bit)
- Download for Windows 10 (64-bit)
- Download for Windows 10 (64-bit) DCH
Linux
NVIDIA SHIELD TV
Vulkan 1.2 Developer Beta Driver Downloads
Vulkan 1.2 support is available in Windows driver version 441.99 and Linux driver version 440.48.02. These drivers also contain other new features, performance enhancements and bug fixes for Vulkan developers and enthusiasts.
Windows 441.99
- Download for Windows 10 (64-bit) DCH
- Download for Windows 10 (64-bit)
- Download for Windows 8 and 7 (64-bit)
Linux 440.48.02
Vulkan Beta Driver Release Notes
The Vulkan 1.2 specification can be found here: https://www.khronos.org/registry/vulkan/
NVIDIA provides full Vulkan 1.2 support and functionality on NVIDIA GeForce and Quadro graphics card with one of the following Turing, Volta, Pascal, Maxwell (first and second generation) and Kepler based GPUs:
- 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, GeForce MX250, GeForce MX230
- Quadro: Quadro RTX 8000, Quadro RTX 6000, Quadro RTX 5000, Quadro RTX 4000, Quadro RTX 3000, Quadro T2000, Quadro T1000
- TITAN: NVIDIA TITAN V
- Quadro: Quadro GV100
- 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
- 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 M6000 24GB, Quadro M6000, Quadro M5500, Quadro M5000, Quadro M5000M, Quadro M4000, Quadro M4000M, Quadro M3000M, Quadro M2200, Quadro M2000
- 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 MX130
- Quadro: Quadro M2000M, Quadro M1000M, Quadro M600M, Quadro M500M, Quadro M1200, Quadro M620, Quadro M520, Quadro K2200M, Quadro K620M
- TITAN: GeForce GTX TITAN, GeForce GTX TITAN Black, GeForce GTX TITAN Z
- GeForce: GTX 780 Ti, GeForce GTX 780, GeForce GTX 770, GeForce GTX 760, GeForce GTX 760 Ti (OEM), GeForce GT 740, GeForce GT 730, GeForce GT 720, GeForce GT 710, GeForce GTX 690, GeForce GTX 680, GeForce GTX 670, GeForce GTX 660 Ti, GeForce GTX 660, GeForce GTX 650 Ti BOOST, GeForce GTX 650 Ti, GeForce GTX 650, GeForce GTX 645, GeForce GT 640, GeForce GT 635, GeForce GT 630, GeForce MX110
- Quadro: Quadro K6000, Quadro K5200, Quadro K5000, Quadro K4000, Quadro K4200, Quadro K2200, Quadro K2000, Quadro K2000D, Quadro K1200, Quadro K620, Quadro K600, Quadro K420, Quadro 410
Turing GPU Architecture
GPUs from the Turing architecture expose several Vulkan extensions giving developers access to advanced features like ray tracing and mesh shaders.Volta GPU Architecture
Pascal GPU Architecture
Maxwell 2 GPU Architecture
Maxwell 1 GPU Architecture
Kepler GPU Architecture
For any bugs or issues, please file a bug through the developer website: https://devtalk.nvidia.com/
Release Updates
January 15th, 2020 - 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.5
- Add PRIME Synchronization support for Linux kernel 5.4 and newer
-
Vulkan 1.2 passing vulkan-cts-1.2.1.0 conformance
January 8th, 2020 - 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, 2019 - 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, 2019 - Windows 436.65, Linux 435.27.08
November 14th, 2019 - 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, 2019 - 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, 2019 - Windows 436.61, Linux 435.27.03
- New:
-
Fixes:
- Improved behavior in low-memory situations
- Fixed graphical corruption in Vulkan game F12017
- Various minor performance improvements
- Improved Vulkan HDR support for multi-device configurations
October 25th, 2019 - 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_PACK32
- VkColorSpaceKHR - VK_COLOR_SPACE_HDR10_ST2084_EXT
- Added support for the __GL_SYNC_DISPLAY_DEVICE environment variable for Linux Vulkan applications
-
Added HDR10 passthrough presentation format and color space for Windows 10 RS2+
-
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, 2019 - Windows 436.56, Linux 435.27.01
- New:
-
Fixes:
- Fix tearing with mailbox present mode on Windows 10 laptops and SLI platforms
October 7th, 2019 - Windows 436.52, Linux 435.27.00
September 18th, 2019 - Windows 436.39, Linux 435.24.02
- New:
-
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, 2019 - 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.
-
Fixed a bug which caused corruption in the following DXVK titles:
August 29th, 2019 - 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, 2019 - Windows 426.06, Linux 418.52.20
- New:
-
Fixes:
- Improved reporting of Xid errors to include the process ID (PID) of the process responsible for the error
July 29th, 2019 - Windows 426.02, Linux 418.52.18
July 17th, 2019 - 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, 2019 - Windows 425.94, Linux 418.52.16
- New:
-
Fixes:
- Improved compatibility with recent Linux kernel release candidates
July 1st, 2019 - Windows 425.89, Linux 418.52.14
- New:
-
Fixes:
- Improved compatibility with recently released Linux kernels
June 1st, 2019 - Windows 425.62, Linux 418.52.10
- New:
-
Fixes:
- Fixes crash when changing presentMode between swapchains
May 22nd, 2019 - Windows 425.58, Linux 418.52.07
April 19th, 2019 - 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 1060 6GB
- Volta: TITAN V
- Turing: GeForce GTX 1660 Ti, GeForce GTX 1660
-
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, 2019 - Windows 425.30, Linux 418.52.03
- New:
-
Fixes:
- Performance improvement for some content on Windows laptops
- Fix rare startup instability on Windows
March 16th, 2019 - Windows 419.62, Linux 418.49.04
March 1st, 2019 - 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, 2019 - Windows 419.09, Linux 418.31.03
- New Extensions:
-
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, 2019 - Windows 417.63, Linux 415.22.05
- New Extensions:
-
Improvements:
- Better pipeline creation performance when there is a cache hit
December 14th, 2018 - Windows 417.42, Linux 415.22.01
-
Improvements:
- Expose two transfer queues on Pascal and above
- Increase maximum point size to 2047
- Increate maximum line width to 64
-
Fixes:
- Fixed issue with vkCmdDrawIndirectCountKHR and vkCmdDrawIndexedIndirectCountKHR and very large counts.
- Fixed issue with Sascha Willems "pushconstants" example.
December 2nd, 2018 - Windows 417.23, Linux 415.18.04
- New Extensions:
-
Fixes:
- Fixes regression with Unity games on Linux
November 28th, 2018 - Windows 417.17, Linux 415.18.02
- Turing support
- New Extensions:
-
Fixes:
- VK_EXT_transform_feedback bug fixes
October 14th, 2018 - Windows 399.41, Linux 396.54.09
-
New Extensions:
- VK_EXT_external_memory_host (Windows only)
- VK_EXT_transform_feedback
September 19th, 2018 - Windows 399.32, Linux 396.54.06
- New Extensions:
-
Bug fixes:
- Corruption workaround for DX content running on Vulkan
September 10th, 2018 - Windows 399.28, Linux 396.54.05
- New Extensions:
August 31st, 2018 - 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 3
- Entry point queries for VK_EXT_conditional_rendering have been fixed
- Missing primitives with some DXVK content has been fixed
August 7th, 2018 - Windows 398.91, Linux 396.51.02
- New Extensions:
-
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, 2018 - Windows 398.58, Linux 396.24.10
- New Extensions:
-
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, 2018 - 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, 2018 - Windows 397.76, Linux 396.18.11
- Pick up the latest fixes from general release driver 397.64
May 7th, 2018 - Linux 396.18.08
- Fix for the Alt-Tab freeze with DXVK
May 3rd, 2018 - Windows 397.54, Linux 396.18.07
- Shader compiler bug fixes
April 25th, 2018 - Windows 397.40, Linux 396.18.05
- Windows driver feature parity with Linux 396.18.02
- Bug fixes
April 17th, 2018 - Linux 396.18.02
- New Extensions
-
Increased several resource limits, notably:
- maxPerStageDescriptorUniformBuffers: 12 -> 15
- maxPerStageDescriptorSamplers: 4,000 -> 1,048,576
- maxPerStageDescriptorSampledImages: 16,384 -> 1,048,576
- maxPerStageDescriptorStorageBuffers: 4,096 -> 1,048,576
- And many others
- Shader performance improvements
March 30th, 2018 - Windows 389.20, Linux 387.42.06
- New Extensions
March 7th, 2018 - Windows 389.10, Linux 387.42.05
- Full support for Vulkan 1.1
- New Extensions
- Updated loader to VulkanRT-1.1.70
January 5th, 2018 - Windows 388.84, Linux 387.42.01
September 28th, 2017 - 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, 2017 - Windows 383.12, Linux 381.26.17
- New Extensions
-
Removed KHX extensions
- VK_KHX_external_memory_capabilities
- VK_KHX_external_memory
- VK_KHX_external_memory_fd
- VK_KHX_external_memory_win32
- VK_KHX_external_semaphore_capabilities
- VK_KHX_external_semaphore
- VK_KHX_external_semaphore_fd
- VK_KHX_external_semaphore_win32
- VK_KHX_win32_keyed_mutex
- Updated Vulkan loader to 1.0.61.0
- Minor bug fixes
August 16th, 2017 - Windows 382.96, Linux 381.26.13
- New Extensions
- 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, 2017 - Windows 382.88, Linux 381.26.11
- New Extensions
- Fixed crash with large sparse images
July 14th, 2017 - Windows 382.83
- Fixed issue with unused compute queue
- Other minor bug fixes
July 13th, 2017 - 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_win32
- VK_KHR_external_memory
- VK_KHR_external_memory_capabilities
- VK_KHR_external_memory_fd
- VK_KHR_external_memory_win32
- VK_KHR_external_semaphore
- VK_KHR_external_semaphore_capabilities
- VK_KHR_external_semaphore_fd
- VK_KHR_external_semaphore_win32
- 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, 2017 - Windows 382.71, Linux 381.26.06
- Various performance improvements and bug fixes
June 27th, 2017 - Windows 382.68, Linux 381.10.10
- New extensions:
- Updated VulkanRT loader to 1.0.51.0
- Various performance improvements and bug fixes
June 9th, 2017 - Windows 382.58, Linux 381.26.03
- New extensions:
- Updated VulkanRT loader to 1.0.49.0
- Various performance improvements
March 27th, 2017 - Windows 377.14, Linux 375.27.15
- SPIR-V compiler bug fixes
- Updated Vulkan loader to version 1.0.42.1
March 15th, 2017 - Windows 377.07
- Bug fixes
March 8th, 2017 - Linux 375.27.14, Windows 377.06
- Bug fixes
February 28th, 2017 - Linux 375.27.13, Windows 377.01
- Fix issue with SteamVR shaders
February 27th, 2017 - Linux 375.27.12, Windows 376.98
-
Beta support for the following new extensions:
Descriptor Set Extensions
Cross process interop extensions:
- VK_KHX_external_memory
- VK_KHX_external_memory_capabilities
- VK_KHX_external_memory_fd
- VK_KHX_external_memory_win32
- VK_KHX_external_semaphore
- VK_KHX_external_semaphore_capabilities
- VK_KHX_external_semaphore_fd
- VK_KHX_external_semaphore_win32
- VK_KHX_win32_keyed_mutex
Multi-GPU extensions:
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:
- Bug fixes to improve compatibility with shaders generated from HLSL
February 9th, 2017 - Linux 375.27.10
- Bug fixes
February 1st, 2017 - Linux 375.27.08, Windows 376.80
- Bug fixes
January 23rd, 2017 - Linux 375.27.07, Windows 376.71
- Beta support for the new Vulkan extensions:
January 10th, 2017 - Linux 375.27.03, Windows 376.66
- Vulkan beta drivers with experimental API interop features
July 6th, 2016 - Windows 368.69
- Public GeForce Game Ready drivers
June 13th, 2016 - Linux 367.27
- Linux Display Driver
May 23rd, 2016 - Windows 368.22, Linux 367.18
- Public GeForce Game Ready drivers
- Bug fixes and performance improvements
May 13th, 2016 - Windows 365.19, Linux 364.19
- Public GeForce Game Ready drivers
- Bug fixes and performance improvements
April 8th, 2016 - 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, 2016 - Windows 364.72
- Update Vulkan API to 1.0.5
- Various performance improvements
- Various bug fixes
March 21st, 2016 - Linux 364.12
- Linux UDA drivers
March 10th, Windows 364.51
- Windows WHQL drivers
March 2nd, 2016 - 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, 2016 - 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, 2016 - Linux 355.00.27
- New:
-
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 https://developer.nvidia.com/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, all available drivers have passed the initial version of Vulkan 1.0 conformance. Current conformance status can be found at https://www.khronos.org/conformance/.
4) Will there be an official (non-beta) NVIDIA driver with Vulkan support?
Yes. We plan to include Vulkan in both Windows and Linux drivers in an upcoming driver release. These will be available to all users to run Vulkan content as part of our regular driver releases.
5) Does NVIDIA support Vulkan on Linux for Tegra?
Yes. Linux for Tegra drivers can be found at https://developer.nvidia.com/embedded/linux-tegra.
6) Does NVIDIA support Vulkan on Android?
Yes. See https://developer.nvidia.com/vulkan-android for details about NVIDIA Vulkan Android drivers for SHIELD devices.