Computer specifications

From Emulation General Wiki
Revision as of 18:08, 14 October 2018 by 116.86.63.90 (talk) (Some relevant information and more in depth overclocking help added, quite some outdated information has to be removed too.)
Jump to navigation Jump to search

Generally, emulation mostly runs off the CPU. And the GPU allowing for higher resolutions, anti-aliasing, and so on. If your CPU isn't fast enough, you will most likely be not able to emulate a system at full speed. At the very least, a Core i5-2500K or a Ryzen 3 1300X or better is recommended for high-end emulation (e.g. PS2, Wii). This page will detail specific information for specific systems, provided that the above is not a viable option.

CPU

Megahertz Myth

Just because a CPU has a high clock speed (Pentium 4 HT 672 @ 3.8 GHz), doesn't necessarily mean that it is powerful.[1] For example, a Celeron D 365 @ 3.6 GHz is less powerful compared to a Celeron E1600 @ 2.4 GHz. Most newer CPUs tend to fare better, though the particular architecture does matter determining its real-world performance. A common misconception is that a higher CPU clock speed guarantees improved emulation performance, which doesn't always apply. Although clock speed is one of the main factors for good CPU performance, it is not always the determining factor. For example, a Core 2 Duo E6600 @ 2.4GHz will always outperform a Pentium D 940 @ 3.2GHz. Even though the Pentium D is clocked higher, the Core 2 Duo is still faster due to the reduced amount of pipeline stages and a wider execution unit. This improves the instructions-per-clock cycle performance it can output, which means better performance at a lower clock speed.

This comparison only points to AMD's Bulldozer microarchitecture versus Intel's Ivy Bridge microarchitecture, not currently: This is also true of many modern Intel vs AMD CPUs[2][3][4][5][6][7], as the high-end Intel CPUs are more efficient than the high-end AMD CPUs. Main reason for that is because Intel CPUs have higher performing floating-point units,[8][9] far greater cache/memory bandwidth/lower latency[10][11].

AMD vs. Intel

As of Ryzen (Summit Ridge), AMD CPUs have similar single-threaded performance when compared to Intel CPUs, though still not exactly close to an equivalent Intel CPU of the same era. However, both choices are good for emulation.

Desktop vs. Laptop

Laptop CPUs are typically much weaker than their desktop variants due to being clocked lower, for battery conservation and heat management reasons. They may also have fewer cores than desktop CPUs with similar naming schemes, which may confuse you. Therefore, it is suggested to research on a mobile CPU's performance before purchasing a laptop that comes with the said CPU.

More Cores and Threads

Emulators generally only utilize 2 cores, or with hacks, sometimes 3 or 4 cores. Thus, owning a 6 or an 8-core CPU, or one equipped with Hyper-Threading/Simultaneous-MultiThreading, won't benefit you anymore than having a similar quad-core CPU. Although, certain exceptions such as newer system emulators (e.g: RPCS3) can utilize more cores by emulating the system's thread scheduler, which allows it to use as many cores as a game makes threads.

Still, the general recommendation is to go for a higher-clocked 2/4/6-core CPU, as most emulators currently can not fully utilize 6 cores or more. Examples include the Core i3-7350K, Core i7-7740X, and the Core i7-8086K.

Overclocking

Not all CPUs can be overclocked, and the motherboard's BIOS must be additionally capable of supporting overclocking. The CPUs in particular that can be overclocked are the usually the ones that are labeled: OverDrive, FX, Extreme Edition, Black Edition, K, and X. Also, certain engineering or qualification sample CPUs that AMD or Intel has manufacturered may also be overclockable, since they were used for testing purposes and were not meant for sale. If you are not sure what kind of a CPU you have, check if it has these overclocking labels. For Intel CPUs, their overclocking labels are OverDrive, Extreme Edition, K, and X. And for AMD CPUs, their overclocking labels are FX, Black Edition, and X.

Although special processors such as the Pentium G3258 are overclockable; you must be running the CPU on a motherboard that supports overclocking. The motherboards that tend to support overclocking features, comes with a chipset that also supports overclocking, which is required for the CPU to be overclockable. However, this only applies to the newer motherboards, not the older motherboards as they tend to vary from being overclockable to not overclockable. For Intel, the overclockable chipsets' name starts with an X or a Z. The other chipsets that were not mentioned, are not overclockable (B, C, H, and Q). For AMD, the overclockable chipsets' name starts with an X or a B. The other chipsets that were not mentioned, are not overclockable (A).

For older desktop motherboards with older chipsets, there might be overclocking available in the form of a front-side bus setting. Use that setting with caution however, as the front-side bus clock speed gets raised, so does the rest of the other components on the motherboard (which causes instability, data loss, etc). Unless the motherboard has a PCI/AGP lock, it is advised not to use the front-side bus setting to overclock the CPU. In further depth, there is safer setting that can be used to overclock without suffering from instability. Called the 'CPU BSEL Select' or similar, it was intended to manually select the proper front-side bus clock speed of the CPU. Though, by this, it allows us to exploit that feature and use it to overclock while staying within the factory specifications of the motherboard. This does not affect the rest of the other components on the motherboard, as the front-side bus is not overclocked and is only following the rated speeds it can achieve. Therefore, it is safer than the dangerous front-side bus setting. Also, be aware that once the CPU has hit a certain clock speed, it can no longer overclock due to voltage issues. The reasoning behind this is because of how higher clock speeds require more voltage, and these non-overclockable motherboards have a high chance of not having the ability to modify the input voltage to the CPU.

However, if there is no 'CPU BSEL Select', proceed with the front-side bus setting with caution. As a safety precaution, do whatever it takes to not allow the PCI bus' clock speed to reach above 40 MHz. As anything higher than the 40 MHz mark will have a very high chance of inducing instability and possible data loss, or worse. This is why the front-side bus setting is only recommended for motherboards that are equipped with a PCI/AGP lock, since they prevent the other components on the motherboard from being overclocked. Also, be aware that your motherboard can only supply a limited amount of current before it hits its limits. This is due to the voltage regulator modules not being rated to supply a large amount of current to keep the CPU and the rest of the other components stable, which is common for motherboards that are not meant for overclocking. The CPU's potential overclock may also be limited by the power supply unit, so a better power supply unit with better efficiency and wattage rating may be required.

For certain laptop CPUs, some of them can be overclocked. A good way to acknowledge that 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. As most laptops don't allow overclocking through the BIOS, third-party applications such as ThrottleStop must be used to overclock these processors instead. However, if your laptop does not have enough thermal headroom for overclocking, it is suggested that you don't overclock. Otherwise, you risk a chance of purposely throttling the CPU's speed and getting slower results instead. This is due to the built-in temperature protection that exists in most laptop CPUs, which generally does not allow itself to exceed 100 degrees celsius.

If your processor is unfortunately not an Extreme or a Black Edition, don't worry. There is an old way of increasing the FSB clock speed through the PLL. The PLL or otherwise known as the Phase-Locked-Loop is a chip that usually controls the FSB clock speed signal, internally for desktops and laptops alike. In this desperate case, we can use ClockGen or CPUCool or SetFSB to control the PLL for increased speeds. A cautionary advice to take note of, is that laptops mostly do not come with a PCI/AGP lock. This means that you will still face the potential data corruption that may occur at higher FSB clock speeds, so the desktop's 40MHz PCI do-not-cross-line mark still applies in this case. However, this only applies if your laptop's PLL is supported by one of these programs mentioned. You will be unfortunately, out of luck if all of these programs do not support your laptop's PLL.

GPU

GPUs are basically just hundreds of under-powered CPUs on the same die, or better described as a massively parallel CPU with a core count that far exceeds most traditional multi-core CPUs.

The thing is, with 3D graphics, you can split the work up into hundreds of different parts and give each piece to a different core on the GPU to work on. 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 frame.

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 did 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 does not know what comes next until it has done what preceded it. It has to run off 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 system capable of being emulated 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 more CPU power, which may mostly 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 fast enough in the first place.

Recommended Specs

PCSX2

Minimum
  • Windows: XP with Service Pack 3 or later
  • macOS: Snow Leopard (10.6.3) or later
  • CPU: Intel Core 2 Duo E8700 @ 3.5 GHz or AMD Phenom II X2 B60 @ 3.5 GHz or better
  • GPU: NVIDIA GeForce 8800 GT or ATI Radeon HD 5670 or better
  • RAM: 2 GB or more
Recommended
  • Windows: Vista with Service Pack 2 32-bit or later
  • macOS: Snow Leopard (10.6.8) or later
  • CPU: Intel Core i5-2500K @ 3.4 GHz or AMD Ryzen 3 1300X @ 3.6 GHz or better
  • GPU: NVIDIA GeForce GTX 650 or ATI Radeon HD 5700 or better
  • RAM: 4 GB or more

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

Dolphin

Minimum
  • Windows: 7 with Service Pack 1 64-bit or later
  • macOS: Yosemite (10.10) or later
  • Ubuntu: Latest LTS or stable
  • CPU: Intel Core 2 Duo E8400 @ 3 GHz or AMD Phenom II X2 545 @ 3 GHz or better
  • GPU: NVIDIA GeForce 8800 Ultra or ATI Radeon HD 3870 or better
  • RAM: 2 GB or more
Recommended
  • CPU: Intel Core i5-2500K @ 3.4 GHz or AMD Ryzen 3 1300X @ 3.6 GHz or better
  • GPU: NVIDIA GeForce GTX 750 Ti or AMD Radeon R7 360 or better
  • RAM: 4 GB or more

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

Mednafen PSX

For good performance
  • Windows: XP Professional x64 with Service Pack 2 (64-bit)
  • CPU: Intel Core 2 Duo E8400 @ 3 GHz or AMD Phenom II X2 545 @ 3 GHz or better
  • GPU: NVIDIA GeForce 8300 GS or ATI Radeon HD 2350 PRO or better
  • RAM: 1 GB or more
For accuracy
  • CPU: Intel Core 2 Duo E8700 @ 3.5 GHz or AMD Phenom II X2 B60 @ 3.5 GHz or better
  • RAM: 2 GB or more

Higan

For performance and balanced (for most games at full speed)
  • Windows: 7 with Service Pack 1 32-bit
  • macOS: Lion (10.7) or later
  • Linux: Distributions using kernel 3.2 or later
  • CPU: Intel Core 2 Duo E8600 @ 3.33 GHz or AMD Phenom II X2 560 BE @ 3.3 GHz or better
  • GPU: NVIDIA GeForce 8300 GS or ATI Radeon HD 2350 PRO or better
  • RAM: 2 GB or more
For accuracy
  • CPU: Intel Core i3-3250T @ 3 GHz or AMD Ryzen 3 1200 @ 3.1 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: Distributions using kernel 2.6 or later
  • CPU: Intel Core 2 Duo E8400 @ 3 GHz or AMD Phenom II X2 545 @ 3 GHz or better
  • GPU: NVIDIA GeForce2 MX200 or ATI Radeon 7000 or Intel Extreme Graphics 2 or 3dfx Voodoo4 4500 or PowerVR Kyro II or S3 DeltaChrome S4 or Trident XP4 or XGI Volari V3 or Matrox Millennium G200 or better
  • RAM: 2 GB or more

Enable the dynarec option for speedups.

PPSSPP

  • Windows: XP with Service Pack 3 or later
  • macOS: Mountain Lion (10.7) or later
  • Linux: Distributions using kernel 2.6.32 or later
  • CPU: Intel Pentium 4 HT @ 3.4 GHz (Northwood) or AMD Athlon 64 3000+ (Clawhammer) @ 2 GHz or better
  • GPU: NVIDIA GeForce FX 5100 or ATI Radeon X1050 or Intel GMA 3000 or S3 Chrome S25 or better
  • RAM: 1 GB or more

Enable the dynarec option for speedups.

References