-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vulkan: Black screen on AMD with multithreading on #10097
Comments
Very odd, seems to work for everyone else. Was this self-built or a binary from https://buildbot.orphis.net/ppsspp/ ? |
I'm testing with the binaries of https://buildbot.orphis.net/ppsspp/ |
I tried with a self-built and and I have the same problem, previous builds for example v1.4.2-534-ga33daa498 work without problems. |
You think you could try some more builds to figure out exactly when it broke? I'm stumped. |
@CesarAxe Is it the case that 534 works but 563 doesn't? Changed pretty much everything about the Vulkan backend in between there so this could be anything. If it is, since you can build yourself, feel like trying a git bisect? https://git-scm.com/book/en/v2/Git-Tools-Debugging-with-Git has a guide if you scroll down a bit. |
No, the build 563 works properly. At this time I was testing and working properly until build v1.4.2-649-gb280e30a2 and fails from build v1.4.2-660-gea2fc5521 onwards. |
Just to double-confirm before I dig deep, you're 100% sure that exactly 649 works and 660 doesn't? There is little in 660 that's vulkan-specific. If it indeed is as above, can you check out 660 and change true to false on "useThread = true" in VulkanRenderManager.cpp? Also try without memstick/PSP/SYSTEM/ppsspp.ini to see if it's some setting. To check out 660:
|
Thanks! If you check out master, change useThread to false, and build that, does it work? Our Vulkan threading seems solid on all other platforms, curious that it wouldn't work on yours. But might have to blacklist it then. With it working, then please go to Settings / Tools / System Information and take as screenshot there of vendor, driver version etc. |
If you can try building it in debug mode, and with useThread back on, it might log or alert errors about our Vulkan usage. It'd be ideal if we were just doing something wrong, or something these AMD drivers doesn't like... -[Unknown] |
Yeah, that doesn't say very much. Two things about that though: Unless you have the Vulkan SDK installed, validation layers won't kick in. Also, the validation layers are mostly agnostic about what GPU they're running on so if we did something really wrong, we'd already have seen it. Probably... Vulkan SDK: https://vulkan.lunarg.com/ |
Ah right. I was mostly hoping for an assert, though. -[Unknown] |
I have had installed vulkan SDK 1.0.65 from the beginning of the tests.. |
Alright, then it should have asserted if it had found something and it didn't so this is really smelling like a driver bug.. not that the validation layers are perfect though, by any means... |
I think this problem might be limited to windows 10 creator's update or any third party software that got buggy from that win10 update like all kinds of info overlays which were known to get broken from it. Can't reproduce this issue on windows 10 pre-creators update and frankly I'm scared to re-enable update services on my win 10 as it will take over my pc for long hours and then probably even more when I try to turn it off, don't have much reason to deal with this for now;p. On a side note I don't see any speed difference between Vulkan Multithreading On and Off, so if this isn't just my fast cpu + so-so gpu combo causing this lack of speed boost, current MT might as well not matter for AMD users.:] |
Has anything changed here (when updating it back to using threading and using the latest drivers available)? -[Unknown] |
@unknownbrackets @hrydgard I tried the new driver 17.12.1 on build 1.4.2-660-gea2fc5521 and it does not give that problem anymore. |
Not sure if it's worth enabling this on AMD, from enabling MT I only get slight slowdown on Vulkan. It's not noticeably big, but it's unnecessary. |
I think there was a benefit for AMD with OpenGL from using a separate thread. So that suggests this isn't categorically a pointless thing to enable on AMD. But to keep sanity, I'm going to close this (it WAS fixed in 1.6.0) and create a new issue to reflect the threading problem as a future thing. -[Unknown] |
Fixes hrydgard#10643. Assumes affected drivers only supported 1.0 due to year 1.1 supporting drivers started coming out.
Fixes hrydgard#10643. Assumes affected drivers only supported 1.0 due to year 1.1 supporting drivers started coming out.
Vulkan: Remove #10097 hack for newer AMD drivers
This happens when switching from OpenGL or Directx to Vulkan backend and when starting the program.
Tested in Windows 10 Fall Creators Update 16299, Amd Radeon r7 250 with latest drivers.
The text was updated successfully, but these errors were encountered: