RPCS3 Claims Alder Lake Is By Far The Best For PS3 Emulation But There's A Caveat
by
Zak Killian
—
Friday, November 19, 2021, 03:34 PM EDT
RPCS3 is the world's leading PlayStation 3 emulator software. It allows users to play their own rips of commercial PlayStation 3 games, and last month, the project announced that it is now able to boot every game title released for the PS3. Progress doesn't stop there, though, and there's much to be done.
The open-source and grassroots nature of projects like game emulators can allow them to quickly pivot and support features that committee-laden commercial software may not want or be able to implement. Specifically, we're talking about support for new and esoteric instruction sets. RPCS3 was one of very few end-user applications to support Intel's TSX instructions, and the team took up the task of adding AVX-512 support last year after the release of Intel's Tiger Lake chips.
We don't normally think of instructions like AVX being useful for client software. Normally, talk of wide-vector math is limited to the scientific and high-performance computing space. The thing is, the 512-bit-wide registers used for AVX-512 instructions are actually quite helpful for emulating the PlayStation 3's unique IBM Cell processor. Without them, the emulator has to break up work into smaller chunks, and that has a significant performance penalty.
Intel's latest and greatest, the 12th-generation Core family codenamed "Alder Lake," don't support AVX-512 officially. There's been some confusing messaging from Intel on this part, but the sentiment that the company has reiterated several times is that the desktop Alder Lake parts do not have AVX-512 support, and that will be the case if you check for it yourself on something like a Core i9-12900K, at least in its default configuration.
The thing is, as enthusiasts have discovered over the last couple of weeks since their launch, Intel's 12th-generation chips actually DO support AVX-512—but only if you disable all of the "E-cores" on the chips. If you recall, Alder Lake processors are split between "Performance" and "Efficiency" cores. The two core types are actually different CPU architectures altogether, and the efficiency cores don't support AVX-512. There's no easy way currently to make sure AVX-512 work doesn't get scheduled to an efficiency core and throw an exception, so Intel simply disabled AVX-512 on the whole chip for now.
Fortunately, some motherboards have the ability to enable it if the E-cores are disabled. So, when folks are able to to enable AVX-512 on Alder Lake, applications like RPCS3 are able to make use of it. In the case of the PlayStation 3 emulator specifically, enabling AVX-512 has a somewhat-variable performance impact (depending on how the game makes use of the Cell processor), but it's significant in most cases.
Alder Lake has more going for it in RPCS3 than just AVX-512, though. After all, the 11th-generation Rocket Lake processors supported ultra-wide vectors, too. The emulator team made a clock-for-clock and core-for-core comparison between the Core i9-11900K and the Core i9-12900K running the demanding title God of War: Ascension. It's just a brief comparison in a single part of the game, but the difference is clear: the 12900K gains 10 FPS (about a 15% improvement) over its last-generation predecessor.
That makes Alder Lake far and away the fastest platform for RPCS3 emulation, because Rocket Lake was already using its AVX-512 support to power past AMD's Zen 3 chips when emulating the retro machine. (That's right: the PS3 came out fifteen years and two days ago. How's your back doing, grandpa?) It's not all doom and gloom for AMD, though; the company's Zen 2 and Zen 3 parts are plenty performant for all but the most demanding PS3 games.
If you'd like to get started with RPCS3, first you'll need a PlayStation 3. Legitimate usage of the emulator to play retail games starts and ends with ripping your own content, and that includes the system firmware and license keys. If you have the requisite materials, check out the emulator's quickstart guide. Alternatively, if you'd like to contribute to the open-source project, hit up the project's Github repo to get started.