• Login
  • Register
  • Dolphin Forums
  • Home
  • FAQ
  • Download
  • Wiki
  • Code


Dolphin, the GameCube and Wii emulator - Forums › Dolphin Emulator Discussion and Support › General Discussion v
« Previous 1 ... 56 57 58 59 60 ... 357 Next »

Can I get Dolphin devs' opinion on this?
View New Posts | View Today's Posts

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Modes
Can I get Dolphin devs' opinion on this?
08-12-2017, 04:46 PM
#1
DaRkL3AD3R Offline
Member
***
Posts: 196
Threads: 20
Joined: Nov 2009
https://www.youtube.com/watch?v=e5dWy5a0vqI

This is a video I made to demonstrate something rather frustrating that's happening with the Nvidia GLCache and OpenGL applications, including Dolphin.

TLDW - when the GLCache is empty, stutters will occur. The GLCache empties on its own after a set amount of time or whenever you launch a different OpenGL or Vulkan application, effectively wiping out the old shader cache and producing stutters.

I'm almost positive this is solely a case of the Nvidia driver being really freaking dumb, but is there anything developers can do to work around this? Is there any developer control over the shader cache ID that Nvidia uses so we can at least get separate folders and files between various OpenGL/Vulkan applications?
CPU: i7 7700k 4.8Ghz GPU: ASUS GTX 1080 Ti STRIX OC  Mobo: ASUS Z270 Maximus IX Hero RAM: G-Skill 32GB DDR4 3200Mhz PSU: EVGA Supernova 850w Titanium Case: Coolermaster HAF X O/S: Windows 10 Pro 1909 x64
Find
Reply
08-13-2017, 12:57 AM
#2
degasus Offline
Developer
**********
Developers (Some Administrators and Super Moderators)
Posts: 1,828
Threads: 10
Joined: May 2012
There is shader compilation and shader variants compilation. The former is exposed to the application and both dolphin and cemu caches those shaders. The later isn't exposed to the application and so only the driver is able to cache them. Worse, there is no reflection if the next draw call needs a new shader variant, so there isn't a way to use some ubershader while compiling the shader variant.

Good luck, in Vulkan, you can also cache shader + pipeline object. As the variants depend on other states within the pipeline object, this will implicitly also caches the shader variants. That's why we suggest to use Vulkan or D3D over OpenGL on nvidia if you want to avoid stutter.
Find
Reply
08-13-2017, 01:16 AM (This post was last modified: 08-13-2017, 02:00 AM by DaRkL3AD3R.)
#3
DaRkL3AD3R Offline
Member
***
Posts: 196
Threads: 20
Joined: Nov 2009
Degasus and Stenzek, can you guys test this for me? Go to the following Nvidia thread and pull the Nvidia Inspector custom setting that Guzz posted: https://forums.geforce.com/default/topic/1020898/geforce-drivers/why-does-shader-cache-option-do-absolutely-nothing-in-driver-profiles-/?offset=16#5202276



I am getting flawless gameplay now on CEMU using this setting (OGLShaderCache set to Off in Nvidia Inspector) because it is allowing the application to assume full control over the shader cache. I tested it on Dolphin in Vulkan using Hybrid ubershaders and noticed a marked improvement in stutter reduction. I think this is it guys. I think we have the answer to the Nvidia question.


I spoke too soon. The stupid Nvidia driver is still latching on to shaders and handling its own cache. With the option above, all it does is keep it in RAM until the application closes, and where it would usually write to disk, it prevents that from happening. But the stutters are still there. I'm really pissed about it too because this genuinely felt like the fix. A toggle to tell the driver to screw off and stop interfering with OpenGL and Vulkan shader caches. It's a shame it didn't pull fully through. This would have been such a nice fix.
CPU: i7 7700k 4.8Ghz GPU: ASUS GTX 1080 Ti STRIX OC  Mobo: ASUS Z270 Maximus IX Hero RAM: G-Skill 32GB DDR4 3200Mhz PSU: EVGA Supernova 850w Titanium Case: Coolermaster HAF X O/S: Windows 10 Pro 1909 x64
Find
Reply
« Next Oldest | Next Newest »


  • View a Printable Version
  • Subscribe to this thread
Forum Jump:


Users browsing this thread: 1 Guest(s)



Powered By MyBB | Theme by Fragma

Linear Mode
Threaded Mode