PS3-emulator får op til 37 procent mere fart efter Nvidia-fix
En 90 linjers workaround retter en Nvidia-driverfejl, der har flaskehalset PS3-emulatoren RPCS3 på GeForce-kort. Gran Turismo 5 vinder op til 37 procent flere billeder i sekundet - og bruger markant mindre VRAM.
PS3-emulatoren RPCS3 har i lang tid kørt med håndbremsen trukket på Nvidia-kort, uden at nogen rigtig vidste hvorfor. Nu er svaret fundet - og løsningen fylder overraskende lidt kode.
En bidragyder med brugernavnet Yahfz har identificeret en bug i Nvidias GPU-driver, som har flaskehalset ydelsen i RPCS3 på GeForce-kort. Workaround'en, der retter problemet, er blevet merget ind i emulatorens master-branch og fylder ifølge kildematerialet omkring 90 linjer kode. Patchen er beskrevet som en teknik til at genbruge kasserede render targets under såkaldt "surface splitting" - noget RPCS3 gør flittigt, når spillet skifter render targets under kørslen.
37 procent flere billeder i sekundet i Gran Turismo 5
De officielle tal fra RPCS3-teamet taler for sig selv. På en Ryzen 7 9850X3D kombineret med en RTX 5070 gik Gran Turismo 5 fra 107 til 147 billeder i sekundet - en stigning på 37 procent. Samtidig faldt VRAM-forbruget markant, fra 7,1 GB til 4,8 GB, altså et fald på omkring 32 procent.
Det er ikke kun Gran Turismo 5, der får godt af fixet. Test med en Intel Core i9-13900K og en RTX 3080 viste omkring 20 procent flere billeder i sekundet i en bådtest-scene fra Red Dead Redemption, mens en Ryzen 7 9800X3D parret med en RTX 5090 gav cirka 25 procent i samme scenarie. Ældre GeForce-kort er heller ikke gået fri af boostet - selv en gammel bærbar med en Intel Core i7-7700HQ og en GTX 1060 fik omkring 20 procent mere fart i Saints Row IV.
Kun Nvidia er ramt
Det interessante ved bugfixen er, at den kun gør en forskel på Nvidia-kort. RPCS3-teamet skriver det direkte: "AMD GPU drivers do not have this bug, thus seeing no change." Med andre ord: fejlen sidder i selve Nvidias driver-implementering, og Radeon-brugere har aldrig oplevet flaskehalsen.
Hvor stor forskellen bliver i praksis afhænger helt af, hvor meget det enkelte spil læner sig op af surface splitting internt. Nogle titler vinder næsten ingenting, andre vinder markant - som Gran Turismo 5, der tilhører gruppen af spil, der rammer bugfixen hårdest.
Ingen svar fra Nvidia
Patchen er markeret som en "workaround" i RPCS3's eget issue-tracker, ikke en rigtig fix - fordi problemet i sidste ende ligger hos Nvidia selv. RPCS3-holdet skriver, at de ikke har fået noget svar fra Nvidia om den underliggende driverfejl. Så længe det er tilfældet, er det op til emulator-udviklerne selv at finde kreative omveje som denne.
For alle med et GeForce-kort og en forkærlighed for PS3-klassikere er budskabet klart: opdatér til den nyeste RPCS3-build. Gevinsten kommer gratis, og der er ingen grund til at vente på, at Nvidia selv løser problemet i driveren.
Kilde: https://wccftech.com/rpcs3-nvidia-driver-bug-workaround-performance-improvement/