Nintendo’s Yuzu Switch Simulator Now Has Support For Multicore CPUs – With Six Threads In Use

Nintendo’s Yuzu Switch Simulator Now Has Support For Multicore CPUs – With Six Threads In Use
Credit: Nintendo

Ever since the creation of Yuzu, the Nintendo Switch emulator purposely built for PC, the team has continually deployed timely updates at an unbelievable pace. Less than a month ago, the team rewrote the virtual memory management system to cut down on Yuzu’s RAM usage in half.

Recently, the Yuzu team unveiled what they termed, ‘the biggest project took on this emulator yet’; support for multicore CPUs. Moreover, developers acknowledged this feature as essential for the emulator as a whole.

Explained below is an excerpt of how the developers described it:

“Prometheus is the internal codename for this feature’s development, and it is a total rework of three things:
• Kernel scheduling
• Boot management
• CPU management
Prometheus aims to ensure that emulation behaves the same as on the Switch while matching the code with the Switch’s original OS code. And, as a by-product, host multicore support using host timing has been added to Yuzu. Host timing is just Yuzu utilizing the host’s (user’s) internal clock for timing.

The multicore feature of Prometheus is a beast in terms of thread handling. Initially, Yuzu used at best two threads: one for the CPU and one for the emulated GPU. Technically we also use a line each for the UI, logging, the host GPU driver, and the host audio driver, but let’s ignore them for the time being.

With multicore, there are now six threads in use: four for the CPU, one for the timer, and one for the emulated GPU. It is worth noting that CPU core four is rarely used. Of these 6, virtually five threads have multiple uses, but not all will always be running.”

However, there’s no reason implying that Prometheus is the universal cure to all performance hiccups. For instance, games like Super Mario Odyssey can still perform under a single core, while titles like Astral Chain and Fire Emblem: Three Houses got a considerable boost, as displayed in the video below posted by BSoD Gaming YouTube Channel.

With that said, this feature is here to stay as it is going to get better over time as new territories of optimizations are discovered. Also, the developers of Yuzu alerted users of two pressing issues:

The first one happens to be the initial multicore release having to take more RAM space, from 100 MB to 3 GB depending on the game—a patch is currently undergoing development.

The second issue arises from the audio being slow in some instances when the multicore is active. However, to silence the issue, you would have to enable the ‘audio stretching’ setting.

Finally, as shown on the BSoD Gaming YouTube channel, when using multicore in Yuzu, it won’t be possible to uncap the frame rate by default. However, to get it done, download the game mods linked in the video description.