Difference between revisions of "Computer specifications"

From Emulation General Wiki
Jump to navigation Jump to search
(grammar)
(more information for the recommended specs part, why are these so hard to find info on??)
Line 1: Line 1:
Generally, emulation runs off the CPU, with the GPU allowing for higher resolutions, anti-aliasing, and so on. If your CPU isn't good enough, you can't emulate a system too well. An Intel Core i5-2500K/3570K/4670K/5675C/6600/7500 or better is recommended for high-end emulation (e.g. [[PlayStation 2|PS2]], [[Wii]]). This page will detail specific information for specific systems if the above is not a viable option.
+
Generally, emulation mostly runs off the CPU, with the GPU allowing for higher resolutions, anti-aliasing, and so on. If your CPU isn't fast enough, you probably won't be able to emulate a system at its full speed. At the very least, a Core i5-2500K or better is recommended for high-end emulation (e.g. [[PlayStation 2|PS2]], [[Wii]]). This page will detail specific information for specific systems, provided that the above is not a viable option.
  
 
Enabling dynarec options also speed things up.
 
Enabling dynarec options also speed things up.
Line 5: Line 5:
 
==CPU==
 
==CPU==
 
===Megahertz Myth===
 
===Megahertz Myth===
Just because a CPU has a high clock speed (Pentium 4 HT 672 3.8 GHz) doesn't mean that it is powerful.<ref>http://www.computer-hardware-explained.com/megahertz-myth.html</ref> For example, a Celeron D 365 overclocked to 8 GHz is light-years less powerful than a Xeon X5698 @ 4.4 GHz. Newer CPUs are almost always 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 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<ref>https://docs.google.com/spreadsheet/ccc?key=0AunYlOAfGABxdFQ0UzJyTFAxbzZhYWtGcGwySlRFa1E#gid=1></ref><ref>https://docs.google.com/spreadsheet/ccc?key=0AunYlOAfGABxdFQ0UzJyTFAxbzZhYWtGcGwySlRFa1E#gid=0</ref><ref>http://forums.pcsx2.net/Thread-CPU-Benchmark-designed-for-PCSX2-based-on-FFX-2?page=107</ref><ref>https://forums.dolphin-emu.org/Thread-new-dolphin-cpu-benchmark-no-game-required?page=15</ref><ref>https://forums.dolphin-emu.org/Thread-new-dolphin-cpu-benchmark-no-game-required?page=15</ref><ref>http://translate.google.com/translate?act=url&depth=1&hl=pl&ie=UTF8&prev=_t&rurl=translate.google.pl&sl=auto&tl=en&u=http://pclab.pl//art55934.html</ref>, 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,<ref>http://wccftech.com/ultimate-cpu-gpu-floating-point-performance-battle-amd-intel/</ref><ref>http://www.anandtech.com/show/7711/floating-point-peak-performance-of-kaveri-and-other-recent-amd-and-intel-chips</ref> far greater cache/memory bandwidth/lower latency<ref>http://vr-zone.com/articles/ivy-bridge-e-i7-4960x-vs-amd-fx-9590-battle-2013-flagships/54295.html/2</ref><ref>http://www.extremetech.com/computing/159619-5ghz-showdown-overclocked-5ghz-amd-haswell-ivy-bridge/2</ref>. This comparison only relates to AMD's Bulldozer microarchitecture versus Intel's Sandy Bridge microarchitecture, however, as the Core 2 and the Phenom II perform similarly with not much of a difference.
+
Just because a CPU has a high clock speed (Pentium 4 HT 672 3.8 GHz), doesn't mean that it is powerful.<ref>http://www.computer-hardware-explained.com/megahertz-myth.html</ref> For example, a Celeron D 365 overclocked to 8 GHz is light-years less powerful than a Xeon X5698 running at 4.5 GHz. 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 CPU will mostly outperform a Pentium D 940 @ 3.2GHz CPU. 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<ref>https://docs.google.com/spreadsheet/ccc?key=0AunYlOAfGABxdFQ0UzJyTFAxbzZhYWtGcGwySlRFa1E#gid=1></ref><ref>https://docs.google.com/spreadsheet/ccc?key=0AunYlOAfGABxdFQ0UzJyTFAxbzZhYWtGcGwySlRFa1E#gid=0</ref><ref>http://forums.pcsx2.net/Thread-CPU-Benchmark-designed-for-PCSX2-based-on-FFX-2?page=107</ref><ref>https://forums.dolphin-emu.org/Thread-new-dolphin-cpu-benchmark-no-game-required?page=15</ref><ref>https://forums.dolphin-emu.org/Thread-new-dolphin-cpu-benchmark-no-game-required?page=15</ref><ref>http://translate.google.com/translate?act=url&depth=1&hl=pl&ie=UTF8&prev=_t&rurl=translate.google.pl&sl=auto&tl=en&u=http://pclab.pl//art55934.html</ref>, 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,<ref>http://wccftech.com/ultimate-cpu-gpu-floating-point-performance-battle-amd-intel/</ref><ref>http://www.anandtech.com/show/7711/floating-point-peak-performance-of-kaveri-and-other-recent-amd-and-intel-chips</ref> far greater cache/memory bandwidth/lower latency<ref>http://vr-zone.com/articles/ivy-bridge-e-i7-4960x-vs-amd-fx-9590-battle-2013-flagships/54295.html/2</ref><ref>http://www.extremetech.com/computing/159619-5ghz-showdown-overclocked-5ghz-amd-haswell-ivy-bridge/2</ref>.
  
 
===AMD vs. Intel===
 
===AMD vs. Intel===
As of Ryzen, AMD CPUs have a 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.
+
As of Ryzen, AMD CPUs have a very similar single-threaded performance to Intel CPUs, which makes both options a good choice for emulation. Any AMD pre-Ryzen CPUs or Intel pre-Sandy Bridge CPUs will give varied results, depending on the emulator's requirements.
  
 
===Desktop vs. Laptop===
 
===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 fewer cores than desktop processors with similar names. For example, a Core i7-640UM is extremely weak in comparison to a Core i3-560. It's a common misconception that a mobile Core i3/i5/i7/i9 is equal in power to non-mobile Core i3/i5/i7/i9, an example of this a Core i9-8950HK being compared with a Core i9-7980XE.
+
Laptop CPUs are typically much weaker than their desktop variants due to being clocked lower, for battery and heat reasons. They may also have fewer cores than desktop CPUs with similar naming schemes. Therefore, it is suggested to research on a mobile CPU's performance before purchasing one. An example of a very similar naming scheme, but not exactly true to its performance, has a name that might match a desktop CPU's name. A good comparison is the Core i7-6700HQ versus the Core i7-6700, notice the obvious speed differences?
  
 
===More Cores and Threads===
 
===More Cores and Threads===
Emulators generally only utilize 2 cores (sometimes 3 or 4 with hacks), so having a hexa or an octa-core CPU, or one equipped with hyper-threading, won't benefit you anymore than having a similar quad-core CPU.<br>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.
+
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.<br><br>Although, newer system emulators such as 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.
  
 
===Overclocking===
 
===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.
 
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 40 MHz 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.
+
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 with a small edit in the BIOS. The issue is that those that support changing the FSB clock speed, might not be capable of changing the processor's supplied voltage without doing wire wrap modifications or similar to the socket. Which makes it very difficult for an overclock to be stable. There must also be a PCI/AGP lock to prevent the FSB from increasing other clock speeds of different components on the motherboard, as this removes the chance of killing or destroying other crucial components. You can still overclock without it, but try not to cross the 40 MHz mark on the PCI bus. Also, increasing the processor's supplied voltage isn't exactly necessary for certain processors that are well-known to handle substantial increases in clock speeds. Another factor is the motherboard, as it depends on its VRMs to supply voltage. Thus due to this, low-end motherboards with lower-grade VRMs won't be as powerful to supply sufficient voltage 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 100/105C.
+
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, you can try the old way of increasing the FSB clock speed through the PLL. The PLL or Phase-Locked-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 40 MHz 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.
+
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==
 
==GPU==
GPUs are basically just hundreds of under-powered CPUs on the same die, or better described as a massively parallel CPU with more than 256 cores.
+
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 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.
+
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.
+
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 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 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".
+
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 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.
+
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==
 
==Recommended Specs==
Line 41: Line 43:
 
;Minimum:
 
;Minimum:
 
*Windows: XP with Service Pack 3 or later
 
*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
 
*CPU: Intel Core 2 Duo E8700 @ 3.5 GHz or AMD Phenom II X2 B60 @ 3.5 GHz or better
*GPU: NVIDIA GeForce 8600 GT or ATI Radeon HD 2900 GT or better
+
*GPU: NVIDIA GeForce 8800 GT or ATI Radeon HD 5670 or better
 
*RAM: 2 GB or more
 
*RAM: 2 GB or more
 
;Recommended:
 
;Recommended:
 
*Windows: Vista with Service Pack 2 32-bit or later
 
*Windows: Vista with Service Pack 2 32-bit or later
*CPU: Intel Core i5-2500K/3570K/4670K/5675C/6600/7500 @ 3.6 GHz or AMD Ryzen 3 1300X @ 3.6 GHz or better
+
*macOS: Snow Leopard (10.6.8) or later
*GPU: NVIDIA GeForce GTX 650 or ATI Radeon HD 5830 or better
+
*CPU: Intel Core i5-2500K @ 3.4 GHz or AMD Ryzen 3 1300X @ 3.6 GHz or better
*RAM: 4GB or more
+
*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]].
 
For information on DualShock 3 controller support, see [[SCP Driver Package]].
Line 58: Line 62:
 
*Ubuntu: Latest LTS or stable
 
*Ubuntu: Latest LTS or stable
 
*CPU: Intel Core 2 Duo E8400 @ 3 GHz or AMD Phenom II X2 545 @ 3 GHz or better
 
*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 2900 XT or better
+
*GPU: NVIDIA GeForce 8800 Ultra or ATI Radeon HD 3870 or better
 
*RAM: 2 GB or more
 
*RAM: 2 GB or more
 
;Recommended:
 
;Recommended:
*CPU: Intel Core i5-2500K/3570K/4670K/5675C/6600/7500 @ 3.6 GHz or AMD Ryzen 3 1300X @ 3.6 GHz or better
+
*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 260X or better
+
*GPU: NVIDIA GeForce GTX 750 Ti or AMD Radeon R7 360 or better
 
*RAM: 4 GB or more
 
*RAM: 4 GB or more
  
Line 69: Line 73:
 
===[[Mednafen|Mednafen PSX]]===
 
===[[Mednafen|Mednafen PSX]]===
 
;For good performance:
 
;For good performance:
*CPU: Intel Core 2 Duo E4400 @ 2 GHz or AMD Athlon X2 4800+ @ 2.4 GHz or better
+
*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
 
*RAM: 1 GB or more
  
 
;For accuracy:
 
;For accuracy:
*CPU: Intel Core 2 Duo E8200 @ 2.66 GHz or AMD Phenom II X2 545 @ 3 GHz or better
+
*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
 
*RAM: 2 GB or more
  
 
===[[Higan]]===
 
===[[Higan]]===
 
;For performance and balanced (for most games at full speed)
 
;For performance and balanced (for most games at full speed)
 
+
*Windows: 7 with Service Pack 1 32-bit
*CPU: Intel Core 2 Duo E4400 @ 2 GHz or AMD Athlon X2 4800+ @ 2.4 GHz or better
+
*macOS: Lion (10.7) or later
*RAM: 1 GB or more
+
*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
 
;For accuracy
 
 
*CPU: Intel Core i3-3250T @ 3 GHz or AMD Ryzen 3 1200 @ 3.1 GHz or better
 
*CPU: Intel Core i3-3250T @ 3 GHz or AMD Ryzen 3 1200 @ 3.1 GHz or better
  
Line 89: Line 97:
 
*Windows: Vista or later <small>(XP with Service Pack 3 by placing msvcp100.dll and msvcr100.dll in program folder, [https://imgur.com/a/fgWhs proof])</small>
 
*Windows: Vista or later <small>(XP with Service Pack 3 by placing msvcp100.dll and msvcr100.dll in program folder, [https://imgur.com/a/fgWhs proof])</small>
 
*macOS: Snow Leopard (10.6.8) or later
 
*macOS: Snow Leopard (10.6.8) or later
*Linux: Any modern Linux distribution using kernels beyond 2.6
+
*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
 
*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 VE 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
+
*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
 
*RAM: 2 GB or more
 
Enable the dynarec option for speedups.
 
Enable the dynarec option for speedups.
Line 101: Line 109:
 
*CPU: Intel Pentium 4 HT @ 3.4 GHz (Northwood) or AMD Athlon 64 3000+ (Clawhammer) @ 2 GHz or better
 
*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
 
*GPU: NVIDIA GeForce FX 5100 or ATI Radeon X1050 or Intel GMA 3000 or S3 Chrome S25 or better
*RAM: 1GB or more
+
*RAM: 1 GB or more
 
Enable the dynarec option for speedups.
 
Enable the dynarec option for speedups.
  

Revision as of 20:03, 30 August 2018

Generally, emulation mostly runs off the CPU, with the GPU allowing for higher resolutions, anti-aliasing, and so on. If your CPU isn't fast enough, you probably won't be able to emulate a system at its full speed. At the very least, a Core i5-2500K 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.

Enabling dynarec options also speed things up.

CPU

Megahertz Myth

Just because a CPU has a high clock speed (Pentium 4 HT 672 3.8 GHz), doesn't mean that it is powerful.[1] For example, a Celeron D 365 overclocked to 8 GHz is light-years less powerful than a Xeon X5698 running at 4.5 GHz. 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 CPU will mostly outperform a Pentium D 940 @ 3.2GHz CPU. 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, AMD CPUs have a very similar single-threaded performance to Intel CPUs, which makes both options a good choice for emulation. Any AMD pre-Ryzen CPUs or Intel pre-Sandy Bridge CPUs will give varied results, depending on the emulator's requirements.

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 fewer cores than desktop CPUs with similar naming schemes. Therefore, it is suggested to research on a mobile CPU's performance before purchasing one. An example of a very similar naming scheme, but not exactly true to its performance, has a name that might match a desktop CPU's name. A good comparison is the Core i7-6700HQ versus the Core i7-6700, notice the obvious speed differences?

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, newer system emulators such as 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.

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 with a small edit in the BIOS. The issue is that those that support changing the FSB clock speed, might not be capable of changing the processor's supplied voltage without doing wire wrap modifications or similar to the socket. Which makes it very difficult for an overclock to be stable. There must also be a PCI/AGP lock to prevent the FSB from increasing other clock speeds of different components on the motherboard, as this removes the chance of killing or destroying other crucial components. You can still overclock without it, but try not to cross the 40 MHz mark on the PCI bus. Also, increasing the processor's supplied voltage isn't exactly necessary for certain processors that are well-known to handle substantial increases in clock speeds. Another factor is the motherboard, as it depends on its VRMs to supply voltage. Thus due to this, low-end motherboards with lower-grade VRMs won't be as powerful to supply sufficient voltage for the processor be stable.

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