NVIDIA R372.90 WHQL Released, New Vulkan Extensions Added




NVIDIA logo

NVIDIA has published a new set of Windows-certified graphics drivers for all GeForce graphics cards.
R372.90 comes with optimizations for Forza Horizon 3 and brings new Vulkan extensions.

R372.90 Downloads for Desktop

R372.90 Downloads for Notebook


GPU Caps Viewer + GTX 1060 + R372.90
GPU Caps Viewer / Vulkan + GTX 1060 + R372.90

 
R372.90 is an OpenGL 4.5 driver and exposes the same extensions (390) than R372.54.

In the Vulkan API side, R372.90 exposes Vulkan 1.0.13 and adds three new extensions at the device level and one new at the instance level:

Instance

VK_NV_external_memory_capabilities (version: 1)
Applications may wish to import memory from the Direct 3D API, or export memory to other Vulkan instances. This extension provides a set of capability queries that allow applications determine what types of win32 memory handles an implementation supports for a given set of use cases.

Device:

VK_NV_external_memory (version: 1)
Applications may wish to export memory to other Vulkan instances or other APIs, or import memory from other Vulkan instances or other APIs to enable Vulkan workloads to be split up across application module, process, or API boundaries. This extension enables applications to create exportable Vulkan memory objects such that the underlying resources can be referenced outside the Vulkan instance that created them.

VK_NV_external_memory_win32 (version: 1)
Applications may wish to export memory to other Vulkan instances or other APIs, or import memory from other Vulkan instances or other APIs to enable Vulkan workloads to be split up across application module, process, or API boundaries. This extension enables win32 applications to export win32 handles from Vulkan memory objects such that the underlying resources can be referenced outside the Vulkan instance that created them, and import win32 handles created in the Direct3D API to Vulkan memory objects.

VK_NV_win32_keyed_mutex (version: 1)
Applications that wish to import Direct3D 11 memory objects into the Vulkan API may wish to use the native keyed mutex mechanism to synchronize access to the memory between Vulkan and Direct3D. This extension provides a way for an application to access the keyed mutex associated with an imported Vulkan memory object when submitting command buffers to a queue.

More information about these new extensions can be found HERE.

 
Here is the Vulkan report from GPU Caps Viewer (GTX 1060 + GTX 750 on Win10 64-bit):

- Instance extensions: 4
	- VK_KHR_surface (version: 25)
	- VK_KHR_win32_surface (version: 5)
	- VK_EXT_debug_report (version: 3)
	- VK_NV_external_memory_capabilities (version: 1)
- Physical devices: 2
	- [Device 0]: GTX 1060 6GB
		- API version: 1.0.13
		- vendorID: 4318
		- deviceID: 7171
		- driver version: 1561755648
		- extensions: 7
			- VK_KHR_swapchain (version: 68)
			- VK_NV_glsl_shader (version: 1)
			- VK_KHR_sampler_mirror_clamp_to_edge (version: 1)
			- VK_NV_dedicated_allocation (version: 1)
			- VK_NV_external_memory (version: 1)
			- VK_NV_external_memory_win32 (version: 1)
			- VK_NV_win32_keyed_mutex (version: 1)
		- device limits
			- maxImageDimension1D: 32768
			- maxImageDimension2D: 32768
			- maxImageDimension3D: 16384
			- maxImageDimensionCube: 32768
			- maxImageArrayLayers: 2048
			- maxTexelBufferElements: 134217728
			- maxUniformBufferRange: 65536
			- maxStorageBufferRange: 2147483647
			- maxPushConstantsSize: 256
			- maxMemoryAllocationCount: 4096
			- maxSamplerAllocationCount: 4000
			- bufferImageGranularity: 1024
			- sparseAddressSpaceSize: 18446744073709551615
			- maxBoundDescriptorSets: 8
			- maxPerStageDescriptorSamplers: 4000
			- maxPerStageDescriptorUniformBuffers: 12
			- maxPerStageDescriptorSampledImages: 8192
			- maxPerStageDescriptorStorageImages: 8192
			- maxPerStageDescriptorInputAttachments: 8
			- maxPerStageResources: 24612
			- maxDescriptorSetSamplers: 4000
			- maxDescriptorSetUniformBuffers: 72
			- maxDescriptorSetUniformBuffersDynamic: 72
			- maxDescriptorSetStorageBuffers: 96
			- maxDescriptorSetStorageBuffersDynamic: 96
			- maxDescriptorSetSampledImages: 49152
			- maxDescriptorSetStorageImages: 49152
			- maxDescriptorSetInputAttachments: 8
			- maxVertexInputAttributes: 32
			- maxVertexInputBindings: 32
			- maxVertexInputAttributeOffset: 2047
			- maxVertexInputBindingStride: 2048
			- maxVertexOutputComponents: 128
			- maxTessellationGenerationLevel: 64
			- maxTessellationPatchSize: 32
			- maxTessellationControlPerVertexInputComponents: 128
			- maxTessellationControlPerVertexOutputComponents: 128
			- maxTessellationControlPerPatchOutputComponents: 120
			- maxTessellationControlTotalOutputComponents: 4216
			- maxTessellationEvaluationInputComponents: 128
			- maxTessellationEvaluationOutputComponents: 128
			- maxGeometryShaderInvocations: 32
			- maxGeometryInputComponents: 128
			- maxGeometryOutputComponents: 128
			- maxGeometryOutputVertices: 1024
			- maxGeometryTotalOutputComponents: 1024
			- maxFragmentInputComponents: 128
			- maxFragmentOutputAttachments: 8
			- maxFragmentDualSrcAttachments: 1
			- maxFragmentCombinedOutputResources: 16
			- maxComputeSharedMemorySize: 49152
			- maxComputeWorkGroupCount: [2147483647; 65535; 65535]
			- maxComputeWorkGroupInvocations: 1536
			- maxComputeWorkGroupSize: [1536; 1024; 64]
			- subPixelPrecisionBits: 8
			- subTexelPrecisionBits: 8
			- mipmapPrecisionBits: 8
			- maxDrawIndexedIndexValue: 4294967295
			- maxDrawIndirectCount: 4294967295
			- maxSamplerLodBias: 15.000000
			- maxSamplerAnisotropy: 16.000000
			- maxViewports: 16
			- maxViewportDimensions: [32768; 32768]
			- viewportBoundsRange: [-65536.000000 ; 65536.000000]
			- viewportSubPixelBits: 8
			- minMemoryMapAlignment: 64
			- minTexelBufferOffsetAlignment: 16
			- minUniformBufferOffsetAlignment: 256
			- minStorageBufferOffsetAlignment: 32
			- minTexelOffset: 4294967288
			- maxTexelOffset: 7
			- minTexelGatherOffset: 4294967264
			- maxTexelGatherOffset: 31
			- minInterpolationOffset: -0.500000
			- maxInterpolationOffset: 0.437500
			- subPixelInterpolationOffsetBits: 4
			- maxFramebufferWidth: 32768
			- maxFramebufferHeight: 32768
			- maxFramebufferLayers: 2048
			- framebufferColorSampleCounts: 15
			- framebufferDepthSampleCounts: 15
			- framebufferStencilSampleCounts: 31
			- framebufferNoAttachmentsSampleCounts: 15
			- maxColorAttachments: 8
			- sampledImageColorSampleCounts: 15
			- sampledImageIntegerSampleCounts: 15
			- sampledImageDepthSampleCounts: 15
			- sampledImageStencilSampleCounts: 31
			- storageImageSampleCounts: 15
			- maxSampleMaskWords: 1
			- timestampComputeAndGraphics: 1
			- timestampPeriod: 1.000000
			- maxClipDistances: 8
			- maxCullDistances: 8
			- maxCombinedClipAndCullDistances: 8
			- discreteQueuePriorities: 2
			- pointSizeRange: [1.000000 ; 189.875000]
			- lineWidthRange: [0.500000 ; 10.000000]
			- pointSizeGranularity: 0.125000
			- lineWidthGranularity: 0.125000
			- strictLines: 1
			- standardSampleLocations: 1
			- optimalBufferCopyOffsetAlignment: 1
			- optimalBufferCopyRowPitchAlignment: 1
			- nonCoherentAtomSize: 64

	- [Device 1]: GTX 750
		- API version: 1.0.13
		- vendorID: 4318
		- deviceID: 4993
		- driver version: 1561755648
		- extensions: 7
			- VK_KHR_swapchain (version: 68)
			- VK_NV_glsl_shader (version: 1)
			- VK_KHR_sampler_mirror_clamp_to_edge (version: 1)
			- VK_NV_dedicated_allocation (version: 1)
			- VK_NV_external_memory (version: 1)
			- VK_NV_external_memory_win32 (version: 1)
			- VK_NV_win32_keyed_mutex (version: 1)
		- device limits
			- maxImageDimension1D: 16384
			- maxImageDimension2D: 16384
			- maxImageDimension3D: 2048
			- maxImageDimensionCube: 16384
			- maxImageArrayLayers: 2048
			- maxTexelBufferElements: 134217728
			- maxUniformBufferRange: 65536
			- maxStorageBufferRange: 2147483647
			- maxPushConstantsSize: 256
			- maxMemoryAllocationCount: 4096
			- maxSamplerAllocationCount: 4000
			- bufferImageGranularity: 65536
			- sparseAddressSpaceSize: 18446744073709551615
			- maxBoundDescriptorSets: 8
			- maxPerStageDescriptorSamplers: 4000
			- maxPerStageDescriptorUniformBuffers: 12
			- maxPerStageDescriptorSampledImages: 8192
			- maxPerStageDescriptorStorageImages: 8192
			- maxPerStageDescriptorInputAttachments: 8
			- maxPerStageResources: 24612
			- maxDescriptorSetSamplers: 4000
			- maxDescriptorSetUniformBuffers: 72
			- maxDescriptorSetUniformBuffersDynamic: 72
			- maxDescriptorSetStorageBuffers: 96
			- maxDescriptorSetStorageBuffersDynamic: 96
			- maxDescriptorSetSampledImages: 49152
			- maxDescriptorSetStorageImages: 49152
			- maxDescriptorSetInputAttachments: 8
			- maxVertexInputAttributes: 32
			- maxVertexInputBindings: 32
			- maxVertexInputAttributeOffset: 2047
			- maxVertexInputBindingStride: 2048
			- maxVertexOutputComponents: 128
			- maxTessellationGenerationLevel: 64
			- maxTessellationPatchSize: 32
			- maxTessellationControlPerVertexInputComponents: 128
			- maxTessellationControlPerVertexOutputComponents: 128
			- maxTessellationControlPerPatchOutputComponents: 120
			- maxTessellationControlTotalOutputComponents: 4216
			- maxTessellationEvaluationInputComponents: 128
			- maxTessellationEvaluationOutputComponents: 128
			- maxGeometryShaderInvocations: 32
			- maxGeometryInputComponents: 128
			- maxGeometryOutputComponents: 128
			- maxGeometryOutputVertices: 1024
			- maxGeometryTotalOutputComponents: 1024
			- maxFragmentInputComponents: 128
			- maxFragmentOutputAttachments: 8
			- maxFragmentDualSrcAttachments: 1
			- maxFragmentCombinedOutputResources: 16
			- maxComputeSharedMemorySize: 49152
			- maxComputeWorkGroupCount: [2147483647; 65535; 65535]
			- maxComputeWorkGroupInvocations: 1536
			- maxComputeWorkGroupSize: [1536; 1024; 64]
			- subPixelPrecisionBits: 8
			- subTexelPrecisionBits: 8
			- mipmapPrecisionBits: 8
			- maxDrawIndexedIndexValue: 4294967295
			- maxDrawIndirectCount: 4294967295
			- maxSamplerLodBias: 15.000000
			- maxSamplerAnisotropy: 16.000000
			- maxViewports: 16
			- maxViewportDimensions: [16384; 16384]
			- viewportBoundsRange: [-32768.000000 ; 32768.000000]
			- viewportSubPixelBits: 8
			- minMemoryMapAlignment: 64
			- minTexelBufferOffsetAlignment: 16
			- minUniformBufferOffsetAlignment: 256
			- minStorageBufferOffsetAlignment: 32
			- minTexelOffset: 4294967288
			- maxTexelOffset: 7
			- minTexelGatherOffset: 4294967264
			- maxTexelGatherOffset: 31
			- minInterpolationOffset: -0.500000
			- maxInterpolationOffset: 0.437500
			- subPixelInterpolationOffsetBits: 4
			- maxFramebufferWidth: 16384
			- maxFramebufferHeight: 16384
			- maxFramebufferLayers: 2048
			- framebufferColorSampleCounts: 15
			- framebufferDepthSampleCounts: 15
			- framebufferStencilSampleCounts: 15
			- framebufferNoAttachmentsSampleCounts: 15
			- maxColorAttachments: 8
			- sampledImageColorSampleCounts: 15
			- sampledImageIntegerSampleCounts: 15
			- sampledImageDepthSampleCounts: 15
			- sampledImageStencilSampleCounts: 15
			- storageImageSampleCounts: 15
			- maxSampleMaskWords: 1
			- timestampComputeAndGraphics: 1
			- timestampPeriod: 1.000000
			- maxClipDistances: 8
			- maxCullDistances: 8
			- maxCombinedClipAndCullDistances: 8
			- discreteQueuePriorities: 2
			- pointSizeRange: [1.000000 ; 189.875000]
			- lineWidthRange: [0.500000 ; 10.000000]
			- pointSizeGranularity: 0.125000
			- lineWidthGranularity: 0.125000
			- strictLines: 1
			- standardSampleLocations: 1
			- optimalBufferCopyOffsetAlignment: 1
			- optimalBufferCopyRowPitchAlignment: 1
			- nonCoherentAtomSize: 64

via





2 thoughts on “NVIDIA R372.90 WHQL Released, New Vulkan Extensions Added”

Comments are closed.