Tuesday, November 23rd 2021
PlayStation 3 Emulator Delivers Modest Speed-Ups with Disabled E-Cores on Intel Alder Lake Processors
According to some testing performed by the team behind RPCS3, a free and open-source emulation software for Sony's PlayStation 3, Intel's Alder Lake processors are enjoying a hefty performance boost when E-Cores is disabled. First of all, the Alder Lake processors feature a hybrid configuration with high-performance P-cores and low-power E-cores. The P-cores are based on Golden Cove architecture and can execute AVX-512 instructions with ease. However, the AVX-512 boost is only applicable when E-cores are disabled as software looks at the whole package. Officially, Alder Lake processors don't support AVX-512, as the processor's little E-cores cannot execute AVX-512 instruction.
Thanks to the team behind the RPCS3 emulator, we have some information and tests that suggest that turning E-cores off gives a performance boost to the emulation speed and game FPS. With E-Cores disabled, and only P-cores left, the processor can execute AVX-512 and gets a higher ring ratio. This means that latency in the ring bus is presumably lower. The team benchmarked Intel Core i9-12900K, and Core i9-11900K processors clocked at 5.2 GHz for tests. The Alder Lake chip had disabled E-cores. In God of War: Ascension, the Rocket Lake processor produced 68 FPS, while Alder Lake produced 78 FPS, representing around 15% improvement.This suggests that more applications can take advantage of disabling E-cores, especially if the application has support for AVX-512 instructions, where only P-cores can execute them. So it remains to be seen throughout trial and error if more cases like this appear.
Source:
RPCS3
Thanks to the team behind the RPCS3 emulator, we have some information and tests that suggest that turning E-cores off gives a performance boost to the emulation speed and game FPS. With E-Cores disabled, and only P-cores left, the processor can execute AVX-512 and gets a higher ring ratio. This means that latency in the ring bus is presumably lower. The team benchmarked Intel Core i9-12900K, and Core i9-11900K processors clocked at 5.2 GHz for tests. The Alder Lake chip had disabled E-cores. In God of War: Ascension, the Rocket Lake processor produced 68 FPS, while Alder Lake produced 78 FPS, representing around 15% improvement.This suggests that more applications can take advantage of disabling E-cores, especially if the application has support for AVX-512 instructions, where only P-cores can execute them. So it remains to be seen throughout trial and error if more cases like this appear.
39 Comments on PlayStation 3 Emulator Delivers Modest Speed-Ups with Disabled E-Cores on Intel Alder Lake Processors
But I also have to confess to being the lucky owner of a model CECHA console with full-hardware backwards compatibility (physical EE/GS, 4 USB, card readers), so until RPCS3 reaches about the same level of maturity as PCSX2 has, I can't say i'm too eager to play the little PS3 games I play through it (not to mention most already received PC ports since then), mostly because barring save states, my console can do everything else and more. This console with Rebug firmware and dev kernel installed on it is nothing short of a treat. Yeah, they're disabled. Ryzen 7 and below parts have one of the chiplet slots on the packaging completely vacant.
Edit: I might be wrong about that due to AVX512. AFAIK it does not enable AVX512 automatically. Either way, I am actually impressed that RPCS3 does support AVC512 :) Cloud service is a whole different ballgame, both in terms of visual quality due to compression artifacts plus huge input lag. On the other side, with emulator like RPCS3 you are not locked to 720p 30fps, far from that.
I have now 2x PS3 Slim, one on normal FW one modded.
I can still use Games via the modded console if theyr require a Connection to a PS server.
Like in Zen 1 (which did not have a separate I/O die), the CCXes on a single die communicate with each other across the Infinity Fabric interface on the die itself; the signal never goes to the cIOD (the I/O die.)
Otherwise you are correct, though. The testing was done at iso clocks, meaning the two processors were locked to the same clock rate. Also, both processors tested support AVX-512. The difference in the two is simply down to the changes between the Willow Cove core used in the 11900K and the Golden Cove cores in the 12900K. RPCS3 has the ability to bypass 30 FPS locks in many titles.
It is clearly seen the gain from 6 to 8 cores is minimal on both Intel and AMD, you get more just from the core boost within the same arch. 5950X bench shows, that the app totally doesn't know what to do with 16 threads while in gaming. It may during the first code transition phase.
As with any shit code, it likes one fast single thread and then it escalates even further. Praising just one extension that it speeds up that one clearly unoptimized thread is kind like licking your own balls. I understand that Intel Software Development Emulator is nice to use. But it still is a whacky code in the core with very poor multithreading.
It still will need years in development. These news will die in news just as they added the dreaded TSX support that was disabled afterwards in CPU firmware due to few HW bugs. I wonder even why that option even lingers in the emulator.
You can see this for example in CPU-Z where 12900K achieves about 13X scaling and the 5950X achieves about 18X.
The 12900K is a "16 core" CPU just like the 5950X yet it can't match it's multicore scaling, it's not even close and all of this while the 5950X is also a lot more power efficient. Are you sure it isn't you who is ignorant here ?
Here, right click your desktop, create a new text document and try naming it "COM1" or "LPT1", and you'll see what I mean. I could even go a step further, it's not only remnants from the DOS days four decades plus past, it still contains the dialer application from the NT 3 days in it and all of the surrounding cruft that makes it work, why on Earth does Windows 11 need this?
My point is that Windows is long since past its prime, and no amount of makeover Microsoft ever does to it is gonna change that. Since Windows 8's release, Microsoft's primary focus seems to have been keeping Windows' rotting corpse as neatly embalmed and dressed as possible, but major hardware design changes like this bring the nastiness outside. Eventually they'll have rewritten enough of the kernel and OS's low level functions that such a design will work, but who knows? If you have to disable half of your cores for your operating system to simply behave, something's wrong with it, and we all know what it is, we've just been telling ourselves otherwise over sheer convenience, to be frank.
AVX2 is clearly the deciding factor here.
It was my take on intel, as they have their fair share of BS to this day.
M$ should build a modern OS from the ground up, instead re-skinning the same old PoS each year, asking for even higher prices.
Everything from Haswell to Kaby Lake is disabled in microcode. Later ones doesn't have the set as such.
Call me up when the emulator won't choke on one single thread while ingame... LLVM limitations are the key factor of shit multithreading here, not Amdahl's law, no matter how you try to defend it. Instead of relying on brute force AVX512, but instead aiding GPGPU/OpenCL for aiding in complex instruction sets.
It totally nuts to read people about needing a rare AVX512 that nobody does use in home/gaming scenarios. For professional use you use different caliber of gear with included ECC RAM if you wish for serious calculations and not fooling around.
Learn.