Bug 111039 - [radv] - Persona 5 in RPCS3 emulator has glitches when using hardware fp16 (LLVM 9)
Summary: [radv] - Persona 5 in RPCS3 emulator has glitches when using hardware fp16 (L...
Status: NEW
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Vulkan/radeon (show other bugs)
Version: git
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
Depends on:
Reported: 2019-07-02 01:49 UTC by Andrew Sheldon
Modified: 2019-07-09 02:21 UTC (History)
0 users

See Also:
i915 platform:
i915 features:

Renderdoc capture (45.71 MB, application/x-7z-compressed)
2019-07-09 02:08 UTC, Andrew Sheldon

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Sheldon 2019-07-02 01:49:29 UTC
Since RPCS3 added support for native 16-bit float support, Persona 5 is exhibiting graphical glitches when using its Vulkan renderer:

With hardware fp16:

With hardware fp16 disabled (correct rendering):

Gentoo AMD64
Mesa git (RADV)
LLVM 9 git
RPCS3 git
Vega 56

Here's a link to the corresponding RPCS3 report: https://github.com/RPCS3/rpcs3/issues/6150

They suggest the problem may be with LLVM code generation. I should note that AMDVLK also has the same bug, which supports this conclusion. LLVM 8 can't be tested since it causes a black screen with RPCS3 (https://bugs.freedesktop.org/show_bug.cgi?id=110970).

Also of note, bug doesn't occur with an RX-550 (on RADV or AMDVLK) and the bug doesn't occur at all on Windows. So it looks to be a Vega specific bug, and only on Linux.
Comment 1 Andrew Sheldon 2019-07-09 02:08:58 UTC
Created attachment 144730 [details]
Renderdoc capture

Renderdoc capture. I'm not sure how helpful it will be since I can't reproduce the bug when renderdoc is running, but maybe it will help see what the game/emulator is doing.
Comment 2 Andrew Sheldon 2019-07-09 02:09:31 UTC
I should add that the bug doesn't occur with the ACO compiler.
Comment 3 Andrew Sheldon 2019-07-09 02:21:42 UTC
I've been informed that ACO doesn't support this feature yet, so it doesn't actually "work" with that compiler, it's just falling back to the non-native form.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.