Skip to content
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

PPU LLVM: Fix optimization of branch string #14620

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Sep 5, 2023

Turns out the branch optimization in #14616 was not active, this enables it.

@elad335 elad335 added CPU Optimization Optimizes existing code LLVM Related to LLVM instruction decoders labels Sep 5, 2023
@elad335 elad335 requested a review from Nekotekina September 5, 2023 08:17
@elad335 elad335 force-pushed the llvm-ppu branch 3 times, most recently from 0e7efd4 to 6b53315 Compare September 5, 2023 08:37
@elad335 elad335 marked this pull request as draft September 5, 2023 12:42
@Ordinary205
Copy link
Contributor

Improves performance on Demon's Souls.

Master: 63.8/69.8/75.3 FPS
Demons Souls framerate 2

PR: 66.7/71.4/75.1 FPS
Demons Souls framerate 1

@cipherxof
Copy link
Contributor

Seems more or less the same in MGS4 with slightly better lows/avg in this scene.

I tested other areas as well and I didn't see a difference.

Master:
Screenshot from 2023-09-05 15-12-34

PR:
Screenshot from 2023-09-05 15-15-20

@elad335
Copy link
Contributor Author

elad335 commented Sep 6, 2023

I forgot to mention that if you want to be benefited from you have to delete cache.

@elad335 elad335 marked this pull request as ready for review September 6, 2023 09:09
@cipherxof
Copy link
Contributor

cipherxof commented Sep 7, 2023

The game closes when trying to compile PPU modules on a fresh cache.

E PPU: LLVM: Verification failed for v6-kusa-Kh8ANdpJ7R8TYsfsPsw6ct-00001P-icelake-client.obj:
Instruction does not dominate all uses!
%58 = add i64 4336, %2
store i64 %58, ptr %51, align 8

RPCS3.log.gz

@Juan12233
Copy link

good can not download why?

@jgt11
Copy link

jgt11 commented Sep 13, 2023

Any further testing needed?

@Nekotekina
Copy link
Member

Well it seems some problem occured?

@franklypaladin
Copy link

Comparing build 15620 and this PR, with fresh PPU-SPU caches. Game version 1.12

PR
Screenshot (4)

Build 15620
Screenshot (5)

Disregard the frametime spike as Windows sometimes stutters while taking an SS. On an another note, this is what the game looks like when you boot it the first time after clearing caches with PR build.
Untitled

and if you load into the level performance is basically horrible, though if you restart the game everything is normal.

With build 15620, interestingly menu has the same glitchy look but its also stuttering.

Untitled2

Which is again fixed by rebooting the game. Might be a new issue as its been a long time since I did the startup sequence of this game.

@elad335 elad335 marked this pull request as draft October 15, 2023 06:33
@Yahfz
Copy link
Contributor

Yahfz commented Feb 4, 2024

Which is again fixed by rebooting the game. Might be a new issue as its been a long time since I did the startup sequence of this game.

It's not caused by this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CPU LLVM Related to LLVM instruction decoders Optimization Optimizes existing code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants