RPCS3 / rpcs3

PlayStation 3 emulator and debugger
https://rpcs3.net/
GNU General Public License v2.0
15.33k stars 1.91k forks source link

[Feature Request] Retain caches as long as possible #10452

Open elad335 opened 3 years ago

elad335 commented 3 years ago
  1. PPU LLVM cache of firmware doesn't need ever to be unloaded.
  2. SPU/RSX/PPU caches do not need to be unloaded automatically when the game exits, in case the user attempts to relaunch the same game. Only if the user launches a different game you need to unload old cache, and even then due to the fact the lots of games share some SPU code (i.e. shared library functions) some of it can be reused in theory.

How it benefits the end user:

  1. Relaunching the same game takes significantly less time.
  2. Launching a different game may be faster due to partially kept PPU/SPU cache loaded.
jnackmclain commented 1 year ago

@MSuih any updates to plans for this feature? I see my issue was closed only referring to this two year old feature request

MSuih commented 1 year ago

This is an open source project, you can work on it yourself. If you don't have the required skills, then you'll just have to wait and see if someone will get the inspiration to do it for you.

It's not an easy problem to tackle and restarting the same game over and over isn't the most common use case so that's why it hasn't been prioritized as much. But ultimately we dont have any control of what each contributor works on, they can pick whichever task they want to work on.

jnackmclain commented 1 year ago

I understand the sentiment of "be the change you want to see" my question is more geared to the use-case scenario.

I would argue that during normal gameplay from a normal user, it would be far more common to subsequently boot the same game multiple times vs booting a different game every session, which is why I wanted to ask.

If I'm playing through a game, I'd be unlikely to be done after only one session.

I only led to press further as the issue was closed and referenced to a two year old feature request and I was curious why that may be the case.