Open roioros opened 1 year ago
Micro stuttering by shader cache compilation... it's more of a hardware limitation, NVMe and M.2 can help a bit. If your GPU is stupidly fast, you can even disable the shader cache at the cost of increasing GPU usage.
Hi, I am using a SSD disk (SATA connector) and my video card is an AMD r9 280x.
This problem does not happen, as seen in the videos and I commented before, with the Public Release 4.0.
I also tried to disable the shader cache from the plugin and from the drivers and the same happens.
I hope you are using Adrenalin 22.6.1
...
Try with: Enable inaccurate texture coordinates
I use RX 460 with Mesa drivers on Linux, and the threaded video helps a lot. GLideN64's threaded video doesn't work on Windows. If you use Windows without an NVIDIA card with minimal support for OpenGL 4.5, you won't have a good experience...
I am using Windows 7 and I was using 19.5.2 drivers, then I changed them to the Adrenalin 21.5.2, which are the ones I currently use, and there was no change. I also tried one by one the plugin options but the result was the same, it's very frustrating.
Why with old versions of the plugin this problem does not appear?
Is there any solution?
Thanks.
I also tried one by one the plugin options but the result was the same, it's very frustrating.
If you did the testing without erasing the shader cache after each test or disabling the shader cache completely, I'm sorry to inform you that your test results were invalid.
Why with old versions of the plugin this problem does not appear?
The old versions "communicated" with the hardware (GPU) more directly, some software calculations (GPU+CPU) are now used, so the "communication" is slower than before.
Is there any solution?
In theory it can be mitigated by using triple buffering
... but it won't disappear entirely.
If you did the testing without erasing the shader cache after each test or disabling the shader cache completely, I'm sorry to inform you that your test results were invalid.
Before each test I clear the cache of the shaders created by the plugin, which are stored in: AppData\Local\AMD\GLCache
In the plugin options I don't have the option "Store compiled shaders for performance" enabled, In the case that I enable it, I also clear the cache created by the plugin inside the emulator (stored in: Plugin\GFX\shaders).
In theory it can be mitigated by using
triple buffering
... but it won't disappear entirely.
Enabling triple buffering does not improve the stuttering problem.
If in the future GLideN64 also used Vulkan, would it improve?
AMD video cards are known to have very poor OpenGL support.
To do tests, where can I download versions of the plugin that are from the year 2019/2020?
If there is no solution I will have to use, unfortunately, the Public Release 4.0.
Sorry for asking again, but does anyone know where I can download the development versions from the years 2019-2020 so I can tests them and see which one works best for me, because at some point in 2020-early 2021 the problems with stuttering started.
Thanks.
Great, fantastic, thank you so much.
I'm going to download those versions and I'm going to start the testings.
I was able to do the tests and all the versions that I was able to download work fine, they don't do the stuttering that the latest versions do to me.
The last version that was available for download was the one from 07/01/2020.
If there are more newer versions than that (07/01/2020), I couldn't find them.
If there are more newer versions than that (07/01/2020)
https://github.com/Jj0YzL5nvJ/GLideN64/actions/runs/4287592186
What emulator are you using?
Thank you very much for that pack of old versions, I will download it to continue testing.
The emulator I use is Project64, the latest version (v3.0.1).
I just finished doing the tests and the versions that do less stuttering are:
GLideN64-115399aa GLideN64-438bcc46 GLideN64-47013e24 GLideN64-4974f64a
All the others that were in the pack do a lot of stuttering.
I finished testing with that new pack you gave me:
GLideN64-3df3df99 GLideN64-4c8a40c6 GLideN64-4f58d66e GLideN64-46d170e5 GLideN64-4974f64a
GLideN64-c48841cf GLideN64-ed1648c4
GLideN64-c14ae30c
This last one did not have stuttering but it does not work as it should since it does not show many screens and all the graphics are corrupted.
According to your tests, the source of the issue is: c48841cfebff118af634135bc0f6a6a02bf4e7d4
To test, do you have the version before and after when that option was implemented?
Thanks.
To test, do you have the version before and after when that option was implemented?
Look it yourself. Search using the first 7 hash characters and you will understand better.
The plugins you tested were recompiled on my demand using GitHub Actions
with custom scripts.
https://github.com/Jj0YzL5nvJ/GLideN64/compare/1f4d04f43b53739bc9b128ab5577d20e3d60ed6a...c555ff25ab5a474f4d48bb5f13d204c64ffd522a (random selection on my part...) https://github.com/Jj0YzL5nvJ/GLideN64/compare/1f4d04f43b53739bc9b128ab5577d20e3d60ed6a...238a3ab1f1690278fd66dcf443c907ae0d79a955 (more accurate selection)
Maybe @gonetz could find those YAML scripts more useful...
In Linux I usually compile with -DVEC4_OPT="ON"
and run with ThreadedVideo = True
, maybe that's why I don't notice so much micro stuttering...
That's all from me... bisected to c48841cfebff118af634135bc0f6a6a02bf4e7d4
Thank you very much for all your help, I really appreciate it.
Hopefully @gonetz can help us and see if he can solve this stuttering problem.
Same issue here with the latest version. RTX 4070, 32 GB of ram & 13600KF. I really don't understand why there are this huge slowdowns and stutterings in most games.
Does the same thing happen to you too?
Unfortunately the latest versions don't work very well, that's why as I mentioned above I have to use an old version of the plugin that works very well, the last version that works for me without (or almost without) stuttering is the one from January 7, 2020, in case you want to try it.
Yes, but that old version doesn't have features that I use a lot, like the emulated fullscreen.
Anyway, I'm a bit confused, because after some more testing I realized that the emulator has a lot of stuttering even with other plugins such as jabo video core, so maybe the problem is my pc. The strange thing is that this is the only emulator I'm having this problems, in my old computer everything worked fine, and this pc is a lot stronger than the old one.
I use the latest stable version of Project64 (v3.0.1) and all plugins except the latest versions of GLideN64 work fine.
Even the plugins paraLLEl-RDP and Angrylion work without problems.
I assume it's a problem with OpenGL and AMD video cards, since their support is poor.
I don't know if it's my problem or if it happens in general but using the latest development versions I have a big stuttering problem.
This problem is fixed when the plugin finishes caching the shadows to disk, but if I don't have the cache done, the stuttering appears.
It happens in all games, but in some it is not very noticeable, while in others it is very visible, one of the games where this is most noticeable is Beetle Adventure Racing! (in the intro for example)
This problem doesn't happen to me using Public Release 4.0 or using other video plugins.
It would be great if I could make a video, so you can see what I'm talking about, but I don't know how to do it.