If you can recall, a few days ago, Beetle PSX gained a dynamic recompiler based on Lightrec/GNU Lightning. We are happy to inform you that the latest version of PCSX ReARMed now available on the buildbot also has Lightrec support enabled for x86 (32bit and 64bit) and Aarch64 (64bit ARM).

How to get it

There are two ways to update your PCSX ReARMed core:

a – If you have already installed the core before, you can go to Online Updater and select ‘Update Installed Cores’.

b – If you haven’t installed the core yet, go to Online Updater, ‘Core Updater’, and select ‘PCSX ReARMed’ from the list. It will then download and install this core.

So what has changed?

Before, PCSX ReARMed only had a dynamic recompiler for 32bit ARM-based systems. Every other CPU architecture would instead have to revert to a CPU interpreter core. This mean that for every other achitecture, it would be far slower than the optimized 32bit ARM versions.

What has changed now is that x86 (32bit and 64bit) and Aarch64 (64bit ARM) now use the Lightrec dynamic recompiler. ARM 32bit will still use the Ari64 dynamic recompiler because it just happens to be much faster than Lightrec.

Other things important of note – the 32bit ARM version uses a different renderer, NEON GPU renderer. All the other versions use P.E.Op.S. Soft GPU. NEON GPU Plugin has an enhanced resolution which gives you a 4x upscaling, while P.E.Op.S. Soft GPU doesn’t have any such feature. We’d like to bring the NEON GPU Renderer over to the other platforms but right now, the C codepaths are pretty bad compared to the optimized 32bit ARM NEON codepaths. It would require a lot of work to bring it up to par and get rid of the graphics glitches, so Pete’s Soft it is for now.

Current limitations

  • Right now it won’t work with the HLE BIOS feature. The dynamic recompiler only works right now with a real BIOS.
  • Runahead won’t work reliably right now.
  • Right now, Lightrec in PCSX ReARMed uses the Cycle Timing Check mode. If you can recall from our earlier article on Beetle PSX, this is a dynarec mode with additional cycle timing checks, which makes it significantly slower than the ‘Max performance’ mode. Hopefully PCSX ReARMed can eventually use the ‘Max Performance’ mode soon, giving us an additional speed boost.

We hope these issues can be resolved soon.

Performance tests

Test hardware: Desktop PC – Core i7 7700k, Windows 10

Game Interpreter (No Dithering) Interpreter (With Dithering) Dynarec (No Dithering) Dynarec (With Dithering)
Final Doom 246fps 245fps 621fps 616fps
Resident Evil 250fps 248fps 642fps 639fps
Tekken 3 190fps 175fps 279fps 250fps