Nvidia driver optimizations vs Vulkan/DX12

amenx

Diamond Member
Dec 17, 2004
4,405
2,725
136
How much room does Nvidia have re driver optimizations now that driver overhead is significantly reduced (or eliminated) with low level APIs like Vulkan/DX12? I understand that AMDs hardware is better designed or more capable of working with low level APIs than Nvidias, and short of new architecure (ie, Volta) to address these shortcomings, where does that leave Nvidia? In terms of compensating one way or another on the driver front?

I noticed decent gains in Vulkan for Nvidia in Dota 2 (vs DX11 but not opengl) and little to nothing vs Doom's opengl. So where does Nvidia stand vs upcoming games with Vulkan support? Will game engines with Vulkan support vary in performance? From general sentiment I hear @ AT is that anything with Vulkan support will follow the Doom pattern with Nvidia at a severe disadvantage and is therefore "Doomed" :D. So where will things likely stand with their current hardware lineup (Pascal)?
 

NTMBK

Lifer
Nov 14, 2011
10,411
5,677
136
How much room does Nvidia have re driver optimizations now that driver overhead is significantly reduced (or eliminated) with low level APIs like Vulkan/DX12? I understand that AMDs hardware is better designed or more capable of working with low level APIs than Nvidias, and short of new architecure (ie, Volta) to address these shortcomings, where does that leave Nvidia? In terms of compensating one way or another on the driver front?

I noticed decent gains in Vulkan for Nvidia in Dota 2 (vs DX11 but not opengl) and little to nothing vs Doom's opengl. So where does Nvidia stand vs upcoming games with Vulkan support? Will game engines with Vulkan support vary in performance? From general sentiment I hear @ AT is that anything with Vulkan support will follow the Doom pattern with Nvidia at a severe disadvantage and is therefore "Doomed" :D. So where will things likely stand with their current hardware lineup (Pascal)?

They could still do shader interception- detect a specific shader program, and replace it with one that has been optimized for NVidia architectures.
 
Feb 19, 2009
10,457
10
76
NV gains in Vulkan with Doom at lower resolution due to CPU bound scenarios which Vulkan lifts, benefiting all GPUs.

Other gains depends on whether the hardware support it or not, or even if the driver is capable. Despite a low-level approach, drivers are still important.

If you want to know whether it's like DX11 and prior API, where AMD/NV can fix dev sloppy code, then no. I saw AMD folks awhile ago, commented that DX12/Vulkan does not allow them to intercept shaders and recompile it to be more optimized because of it's low-level nature. If devs do something sloppy, AMD has to get hands on at the source and fix it.
 

Deders

Platinum Member
Oct 14, 2012
2,401
1
91
Nvidia's opengl support has always been much better than AMD's. Again I see Vulcan as a way of leveling the playing field so AMD hardware gets used properly.

Nvidia was pretty much already there performance wise.
 

Headfoot

Diamond Member
Feb 28, 2008
4,444
641
126
Vulkan is still very immature for everyone involved. I suspect both companies will continue to gain in it for a while as corner case bugs are eliminated and the teams have time to gnaw on the new API more
 

dogen1

Senior member
Oct 14, 2014
739
40
91
If you want to know whether it's like DX11 and prior API, where AMD/NV can fix dev sloppy code, then no. I saw AMD folks awhile ago, commented that DX12/Vulkan does not allow them to intercept shaders and recompile it to be more optimized because of it's low-level nature. If devs do something sloppy, AMD has to get hands on at the source and fix it.

I'm not sure I believe that. They have to compile each shader anyway, so why shouldn't they be able to replace them?
 

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136
Even with the multithreaded command lists that NVidia's got for D3D 11, it's not even close to reaching parity with Vulkan/D3D12. It takes a bunch of effort on both the developer & the GPU vendor to implement, and still faces a ceiling.

Suppose ya have four cores, and you're at the ol' 6,000 draw call limit fer a single core. 6k * 4 = 24,000 draw calls. The new APIs, 'owever, are doing more than double that on a single core, and are supposed ta be extremely easy to parallelize.

Of course, there aren't many games that push past the ol' 6k draw calls, but eh. Point still stands, and games are gonna be gettin' more and more stuff put in 'em.
 

dogen1

Senior member
Oct 14, 2014
739
40
91
Even with the multithreaded command lists that NVidia's got for D3D 11, it's not even close to reaching parity with Vulkan/D3D12. It takes a bunch of effort on both the developer & the GPU vendor to implement, and still faces a ceiling.

Suppose ya have four cores, and you're at the ol' 6,000 draw call limit fer a single core. 6k * 4 = 24,000 draw calls. The new APIs, 'owever, are doing more than double that on a single core, and are supposed ta be extremely easy to parallelize.

Of course, there aren't many games that push past the ol' 6k draw calls, but eh. Point still stands, and games are gonna be gettin' more and more stuff put in 'em.

I wonder if games are heading towards being more GPU driven..

Do we really need to be pushing thousands of draw calls with the CPU? I don't know, but some games are able to make do with just a few.
 

OVerLoRDI

Diamond Member
Jan 22, 2006
5,490
4
81
I think it's more a case of Nvidia have had very well optimised drivers for a long time, and now that AMD have the ability to reduce their overheads we are finally seeing their hardware as it should be.

Found a good explanation here:

http://forums.bit-tech.net/showpost.php?p=4114663&postcount=1138

Good stuff, especially the last bit comparing the 970 vs the 390. Amazing how much power was left unused in DX11 on the latest AMD cards.
 

Yakk

Golden Member
May 28, 2016
1,574
275
81
Yeah, unfortunately so much wasted resources in DX11 for AMD. Looking forward, we will be seeing these resources actually bring used.