Computer specifications

From Emulation General Wiki
Revision as of 08:56, 15 February 2018 by 222.164.217.187 (talk) (PPSSPP)
Jump to navigation Jump to search

Generally, emulation runs off the CPU, with the GPU allowing for higher resolutions, AA, etc. If your CPU isn't good enough, you can't emulate a system too well. An Intel Core i5 2500K, 3570K or 4670K or above is recommended for high end emulation (e.g. PS2, Wii). This page will detail specific information for specific systems, if the above is not a viable option.

Enabling dynarec options also speed things up.

CPU

Megahertz Myth

Just because a CPU has a high clock speed (e.g. in GHz) doesn't mean that it is powerful.[1] For example, a Pentium 4 HT 672 3.8GHz is lightyears less powerful than a Core i5-760 2.8GHz. Though "i5" is quite vague, as that could be any of the generations or models, Pentium 4s are just that weak in comparison. Newer CPUs are almost always better. Though the particular architecture does matter. A common misconception is that a higher CPU clock speed guarantees improved emulation performance. Although clock speed is one of the main factors for good CPU performance, it is not the determining factor. Newer CPUs generally perform better than older ones at similar clock speeds. For example, a Core 2 Duo E6600 2.4GHz processor will generally outperform a Pentium D 940 3.2GHz processor. Even though the Pentium D is clocked higher, the Core 2 Duo is faster due to the reduced amount of pipeline stages with an additional amount of SSE units - along with a massively improved twin-ALU configuration. This improves the instructions per clock cycle performance it can output, which means better performance at a lower clock speed. That is the reason why no Pentium D can touch a Core 2 Duo at the same clock speed. This is also true of many modern Intel vs AMD processors[2][3][4][5][6][7], as the high-end Intel processors are more efficient than the high-end AMD processors. Main reason for that is because Intel processors have higher performing floating-point units,[8][9] far greater cache/memory bandwidth/lower latency[10][11].

AMD vs Intel

As of Ryzen, AMD CPUs have very similar single threaded performance to Intel CPUs, which makes both options a good choice for emulation. Any pre-Ryzen AMD CPUs or pre-Sandy Bridge Intel CPUs will give varied results depending on the emulator.

Desktop vs. laptop

Laptop CPUs are typically much weaker than their desktop variants due to being clocked lower, for battery and heat reasons. They may also have less cores than desktop processors with similar names. For example, an i7 2-core laptop processor is most often weaker than a decent i3 desktop one. It's a common misconception that an i-whatever laptop is equal in power to i-whatever desktop.

More Cores

Emulators generally only utilize 2 cores (sometimes 3 or 4 with hacks), so having a hexa/octacore CPU, or one capable of hyperthreading, won't benefit you anymore than having a similar quadcore CPU.
Newer system emulators like RPCS3 can utilize more cores though, by emulating the system's thread scheduler it uses as many cores as a game makes threads.

Overclocking

Not every CPU can be overclocked, nor does every motherboard/BIOS support it. An advantage of the Intel K series is that they are unlocked and can easily be overclocked. Also, certain Intel processors such as their Pentium 20th Anniversary CPU are sold unlocked for a cheaper price than K-series chips, and while they may lack features like hyperthreading, they're capable enough especially for those who would like to overclock on a budget. Keep in mind that budget motherboards e.g. certain Haswell H and B-series boards from ECS and ASUS only have options for setting the processor's multiplier and not voltages. Also, Intel may block overclocking on non-Z series boards in future microcode/BIOS updates. So if it can't play a game currently then you can, in many cases, overclock it until it is playable. Laptop CPUs often cannot be overclocked due to BIOS limitations. Extreme or incorrectly-done overclocking can cause instability and hardware damage. If the emulator starts having problems try again without overclocking. For older desktop motherboards, there is a chance of it supporting overclocking by increasing the FSB clock speed. This might or might not apply to many old motherboards. Generally, they should be capable of changing their FSB clock speed by a small edit in the BIOS. The issue is that those that support changing the FSB might not be capable of changing the processor's voltage without doing wire wrap modifications to the socket, making it difficult to sustain an overclock. There must also be a PCI/AGP lock to prevent the FSB from increasing other clock speeds of different components on the motherboard, this removes the chance of it killing or destroying other crucial components. You can still overclock without it, but try not to cross the 40MHz mark on the PCI bus. Regarding the processor, increasing voltage isn't exactly necessary for certain processors that are well-known to handle increases in clock speeds. Another factor is the motherboard: it depends on its VRMs to supply voltage, so lower-grade motherboards with lower-grade VRMs won't be as powerful enough to supply sufficient power for the processor be stable.

Some older laptop CPUs can be overclocked. A surefire way to tell if you have an overclockable CPU is to check if it has an "Extreme" label on its name for Intel processors, or a "Black Edition" label on its name for AMD processors. Most laptops don't allow overclocking through the BIOS, so Throttlestop must be used to overclock these processors instead. However, if your laptop does not have enough room for temperatures to rise and stabilize - it is advised to NOT overclock! Otherwise, you will risk a chance of it getting destroyed in the process of mad overclocking. Though, most of the time it is saved by the forced thermal shutdown at 105/100C. If your processor is unfortunately not a Extreme or a Black Edition, you can try the old way of increasing the FSB clock speed through the PLL. The PLL or Phase-Lock-Loop is a chip that controls the FSB internally for desktops and laptops alike, since laptops have less flexibility in overclocking - we can exploit the PLL's advantages. In this case, we use CPUCool or SetFSB. That is, if your laptop's PLL is supported by one of these programs mentioned. This way of overclocking is similar to a desktop's way of overclocking, but with far less overclocking capacity. Remember, the same 40MHz PCI bus mark applies to laptops. They do not include a PCI/AGP lock either, so try not to go above the 40MHz PCI bus mark.

GPU

GPUs are basically just hundreds of underpowered CPUs on the same die. Or you can think of it as a 300 core CPU.

The thing is with 3D graphics is you can split the work up into hundreds of different parts and give each piece to a different core on the GPU since it doesn't matter which order the pixels are rendered in, as long as they all get rendered for the same frame before moving on to the next.

File compression/extraction and bitcoin mining are also good examples of programs that can make use of parallel processing.

However, most programs can not do this. Dwarf Fortress for example can't make use of a graphics card, because every calculation it does is dependent on the one done before it. That obviously doesn't work if you try and do them all at the same time.

Pretty much any emulator is the same. It can't know what comes next until it's done what preceded it. It has to run on a single thread. It still needs some form of graphical output to output the final rendered 2D screen alone. This can be done via a GPU to put the 3D graphics on the screen, but any emulatable system shouldn't be too taxing. This is called "Hardware Rendering". Alternatively, all of the graphics processing can be done on the CPU, and will be more predictable/consistent for it, but that is also costly. This is called "Software Rendering".

Most 3D emulators have hardware and software renderers. Software renderers use much more CPU power, which may be slower. They may also run on their own threads separate from other emulator parts, which would likely reduce the performance loss, but the CPU must still be strong enough in the first place.

Recommended Specs

PCSX2

Minimum
  • Windows: Vista 32-bit or later
  • CPU: Intel Core 2 Duo @ 3.2 GHz or better
  • GPU: 8600 GT or better
  • 1GB RAM (2GB if on Vista / Windows 7)
Recommended
  • CPU: Intel Core i5 2500k, i5 3570K or i5 4670K

For information on DualShock 3 controller support, see SCP Driver Package.

Dolphin

Minimum
  • Windows: 7 or later
  • Ubuntu: Latest LTS or stable
  • 3 GHz+ Intel Core 2 Duo CPU
  • DX10 GPU
  • 2 GB+ RAM
Recommended
  • CPU: Intel Core i5 2500k, i5 3570K or i5 4670K or better
  • GPU: nVidia Fermi-based GPUs, or AMD GCN-based GPUs
  • RAM: 4 GB+

See the Dolphin page for further recommendations, such as controller setups.

Mednafen PSX

For good performance
  • CPU: Intel Core 2 Duo @ 2.0GHz or better

Higan

Performance and Balanced (for most games at full speed)
  • CPU: Intel Core 2 Duo @ 2.0 GHz or better
Accuracy
  • CPU: Intel Ivy Bridge i3 @ 3 GHz or better

DeSmuMe

  • Windows: Vista or later (XP with Service Pack 3 by placing msvcp100.dll and msvcr100.dll in program folder, proof)
  • macOS: Snow Leopard (10.6.8) or later
  • Linux: Any modern Linux distribution using kernels beyond 2.6
  • CPU: Equivalent to Intel Core 2 Duo E8400 @ 3.0 GHz or an AMD Phenom II X2 545 @ 3.0 GHz or better
  • RAM: 2 GB or more

Enable the dynarec option for speedups.

PPSSPP

  • Windows: Windows XP with Service Pack 3 or later
  • macOS: Mountain Lion (10.7) or later
  • CPU: Intel Pentium 4 HT @ 3.4GHz (Northwood) or an AMD Athlon 64 3200+ (Venice) @ 2.2GHz
  • GPU: NVIDIA GeForce FX 5100 or ATI Radeon 9500 or Intel GMA X3100 or any other OpenGL 2.1-capable GPU (software OpenGL 2.1 will work)
  • RAM: 1GB or more

Enable the dynarec option for speedups.

References