RPCS3 / rpcs3

PS3 emulator/debugger
https://rpcs3.net/
GNU General Public License v2.0
15.16k stars 1.89k forks source link

Vulkan Crash on 0.0.12-10865 till 0.0.12-10915 work fine on 0.0.12-10811 & 0.0.11-10810 #8955

Closed ImpactKaizer closed 3 years ago

ImpactKaizer commented 3 years ago

RPCS3 Crashes from 0.0.12-10865 till 0.0.12-10915 when setting render to vulkan and Anti-Aliasing (Auto & Disabled). Tested with 0.0.12-10811 & 0.0.11-10810 on the same settings on the same device. which is a GPD Win Max

OS :Archlinux + KDE HDD: 1TB NVME Ram:16GB CPU:Intel i5-1035G7 GPU:Intel Iris Plus Graphics 940 - 64EU

RPCS3-0.0.12-10865.log RPCS3-0.0.12-10885.log RPCS3-0.0.12-10915.log

kd-11 commented 3 years ago
  1. Provide rpcs3.log from ~/.cache/rpcs3/RPCS3.log which contains information about the emulator operation.
  2. Clean rpcs3 data before running the emulator. You can simply remove ~/.cache/rpcs3

Since other devices are unaffected this is likely some intel-specific or system-specific issue, I can confirm archlinux + KDE run just fine under RADV as this is my primary setup.

ImpactKaizer commented 3 years ago

Yeah on my other devices like the A15 AMD + Nvidia it is fine along with and my Desktop AMD CPU + GPU it loads fine

ImpactKaizer commented 3 years ago

I've attached the log after deleting everything from the cache with version 0.0.12-10915 @kd-11 still the same it crashes RPCS3.log

kd-11 commented 3 years ago

@ImpactKaizer Log looks fine, just unexpected crashing. How many titles are affected?

kd-11 commented 3 years ago

Also, which is the first affected build? You can bisect to figure that out.

ImpactKaizer commented 3 years ago

@ImpactKaizer Log looks fine, just unexpected crashing. How many titles are affected?

I tried with mostly

SRW OG Dark prison 2nd SRW OG And Demon Souls

ImpactKaizer commented 3 years ago

Also, which is the first affected build? You can bisect to figure that out.

@kd-11 I first Tried with 0.0.12-10865 & also Tried 0.0.12-10851 they also crash on start-up , but seem to fine with 0.0.12-10839.

bevanweiss commented 3 years ago

@ImpactKaizer the ideal situation is if you can test the intermediate builds (i.e. those between 10839 and 10851) to identify exactly which build it was that caused the regression. This narrows it down from being hundreds/thousands of lines of code changes to just being maybe a few dozen. It just makes it that little bit easier for the likes of kd-11 to narrow down where the problem might be :)

ImpactKaizer commented 3 years ago

@ImpactKaizer the ideal situation is if you can test the intermediate builds (i.e. those between 10839 and 10851) to identify exactly which build it was that caused the regression. This narrows it down from being hundreds/thousands of lines of code changes to just being maybe a few dozen. It just makes it that little bit easier for the likes of kd-11 to narrow down where the problem might be :)

@bevanweiss &@kd-11 it seems to have started with 0.0.12-10846. As anything below runs fine with vulkan for me on the device mentioned , if you required logs from from the build mentioned let me know.

ghost commented 3 years ago

Also got this on my laptop with AMD/Intel GPUs using the RADV ACO driver. It only happens on Kingdom Hearts for now though.

kd-11 commented 3 years ago

If it only happens in one game then it is not the same issue. I think this happens because I used doubles in the vertex shader, I'll revert to single floats and see if precision degrades or not. fp64 is likely not supported on intel.

kd-11 commented 3 years ago

Try with the build that will be generated by https://github.com/RPCS3/rpcs3/pull/8967. If it still crashes, let me know and we can get more information from SDK layers.

ImpactKaizer commented 3 years ago

Try with the build that will be generated by https://github.com/RPCS3/rpcs3/pull/8967. If it still crashes, let me know and we can get more information from SDK layers.

@kd-11 so now we wait for the compiled build mentioned ?

kd-11 commented 3 years ago

@ImpactKaizer https://artprodsu6weu.artifacts.visualstudio.com/Ad52971ce-2651-462c-a71a-8019f393a0cf/3598951b-4d39-4fad-ad3b-ff2386a649de/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL25la290ZWtpbmEvcHJvamVjdElkLzM1OTg5NTFiLTRkMzktNGZhZC1hZDNiLWZmMjM4NmE2NDlkZS9idWlsZElkLzM4NTIvYXJ0aWZhY3ROYW1lL1JQQ1MzK2ZvcitMaW51eA2/content?format=zip

ImpactKaizer commented 3 years ago

@kd-11 I cleaned the cache & it still crashes with vulkan setting I've added the log for reference. RPCS3.log

kd-11 commented 3 years ago

Then it is a lot more complicated, segfaults are not going to be stored in any meaningful way in the log. If you have coredumps configured to write to disk, you can get a stacktrace using gdb. If you are able to, I would highly advice to compile rpcs3 for linux from AUR instead of downloading the appimage as there are too many variables that I cannot control (appimages are not binaries, they are archives with other components bundled in). You can also enable "debug output" option in the config file for the game you're testing and install the vulkan-devel package from pacman, then run the game and attach the log. As I cannot see any problems in the log, I cannot proceed without a similar setup, but I have an AMD cpu.

ImpactKaizer commented 3 years ago

Then it is a lot more complicated, segfaults are not going to be stored in any meaningful way in the log. If you have coredumps configured to write to disk, you can get a stacktrace using gdb. If you are able to, I would highly advice to compile rpcs3 for linux from AUR instead of downloading the appimage as there are too many variables that I cannot control (appimages are not binaries, they are archives with other components bundled in). You can also enable "debug output" option in the config file for the game you're testing and install the vulkan-devel package from pacman, then run the game and attach the log. As I cannot see any problems in the log, I cannot proceed without a similar setup, but I have an AMD cpu.

@kd-11 I also have rpcs3 from the Aur but I think that's version 10910 I'll update and installed the devel package as mentioned as for the config file were is it located / path since I never tried this stuff before ?

kd-11 commented 3 years ago

~/.config/rpcs3/custom_configs//config.yml There is another way by enabling the debug menu in the GUI, but I cannot remember where that file is on linux.

ImpactKaizer commented 3 years ago

@kd-11 I've enabled the Debug output as requested. With build 0.0.12-10933 from AUR RPCS3.log

ImpactKaizer commented 3 years ago

~/.config/rpcs3/custom_configs//config.yml There is another way by enabling the debug menu in the GUI, but I cannot remember where that file is on linux.

@kd-11 do you require any other files aside rpcs3.log

ImpactKaizer commented 3 years ago

Any update regarding this issue ? @kd-11

kylon commented 3 years ago

@kd-11 yeah, no doubles for intel

https://github.com/RPCS3/rpcs3/blob/b998852385ddcd7c315d583e0a6919095fcc1daf/rpcs3/Emu/RSX/Common/GLSLCommon.h#L587

reverting all the doubles to floats fixes the vulkan crash

AniLeo commented 3 years ago

I don't get any crashing on anv with HD 530. This is likely specific to that generation of iGPUs.

kylon commented 3 years ago

I don't get any crashing on anv. This is either Windows specific (more likely) or specific to that generation of iGPUs.

iris plus crashes on windows and linux, both with latest drivers (archlinux and beta for windows)

AniLeo commented 3 years ago

Have you tested with mesa-git AUR?

kylon commented 3 years ago

nope

kd-11 commented 3 years ago

I forgot to remove doubles from rcp_precise and revert the generic path to the old method. Will fix soon in upcoming driver compatibility patches.

kd-11 commented 3 years ago

Try with https://github.com/RPCS3/rpcs3/pull/9131.

kylon commented 3 years ago

working

ImpactKaizer commented 3 years ago

@kd-11 @kylon @AniLeo can I build from the Aur repo now or do I have to wait a bit ?

kd-11 commented 3 years ago

If AUR correctly tracks our git then you can build from AUR without issue.