What's the most powerful console...

Anarchist420

Diamond Member
Feb 13, 2010
8,645
0
76
www.facebook.com
...that could have all of its processors replicated with 100% cycle accuracy and at 2/3 or greater performance by a GTX Titan?

I'm pretty sure a Dreamcast could be, probably a PS2, but I'm not sure about a gamecube, an Xbox, or anything after that generation so that's why I'm asking.

I was thinking CUDA or OpenCL would be a good vehicle to make console replicators.

High level emulation is okay but has too many problems (something that works with one game might break another meaning that the emulators of today are more like game emulators, since they don't replicate the console) and low level replication is certainly feasible at decent performance given 1.5 double precision TFLOPS.

I don't know what I'm talking about so I'd like some experts to reply to this thread.

Anyway, cycle accurate replicators may make my life worth living again so this is a important topic for me.
 

Stuka87

Diamond Member
Dec 10, 2010
6,240
2,559
136
I am not an emulation expert, but I doubt you could emulate everything on a GPU.

As for 100% accuracy, The newest console that I know of that can do this is the SNES, and even this is very resource intensive. Most PC's cannot do it. Which is why all emulators do not try for 100% cycle accuracy.
 

Anarchist420

Diamond Member
Feb 13, 2010
8,645
0
76
www.facebook.com
I am not an emulation expert, but I doubt you could emulate everything on a GPU. As for 100% accuracy, The newest console that I know of that can do this is the SNES, and even this is very resource intensive. Most PC's cannot do it. Which is why all emulators do not try for 100% cycle accuracy.
You can emulate everything on a GPGPU like Titan and a 7950/7970/GE.
 

Stuka87

Diamond Member
Dec 10, 2010
6,240
2,559
136
You can emulate everything on a GPGPU like Titan and a 7950/7970/GE.

How do you figure? What is "Everything"? GPGPU is very good at some things, but very bad at others.

BTW: The 100% accurate emulator for SNES is BSNES.
 

SPBHM

Diamond Member
Sep 12, 2012
5,066
418
126
100% accuracy I think it's impossible with current hardware.

also, as far as I know emulating a console with multiple cores is much harder than with a single core, so I think fast CPUs with high single thread performance is the way to go.
 

poofyhairguy

Lifer
Nov 20, 2005
14,612
318
126
The problem is unlike graphics, emulation is often not very conducive to parallel processing.

For example, I built a computer just to emulate the Wii and PS2. It has a 2500k at 4.5Ghz and a lowly 460GTX GPU. Running emulators the 460GTX is almost never maxed. It is the poor 2500k that is maxed, often on one core.

The perfect emulation machine would be a dual-core i7 at 7ghz per core.
 

Stuka87

Diamond Member
Dec 10, 2010
6,240
2,559
136
The problem is unlike graphics, emulation is often not very conducive to parallel processing.

For example, I built a computer just to emulate the Wii and PS2. It has a 2500k at 4.5Ghz and a lowly 460GTX GPU. Running emulators the 460GTX is almost never maxed. It is the poor 2500k that is maxed, often on one core.

The perfect emulation machine would be a dual-core i7 at 7ghz per core.

This is why I think using GPGPU for accurate emulation would not work. GPGPU accels at high parallelism, where as accurate emulation has no need for that. Unless you are emulating a console that has multiple cores. Then you would need the same number of cores to emulate it.
 

Revolution 11

Senior member
Jun 2, 2011
952
79
91
How do you figure? What is "Everything"? GPGPU is very good at some things, but very bad at others.

BTW: The 100% accurate emulator for SNES is BSNES.
I remember reading somewhere that BSNES is not even 100% accurate because the last bit of accuracy was not worth the performance drop-offs. It's more like >95% accuracy.

EDIT: Ah here is the link. The developer of BSNES mentions that to get 100% accuracy for Pong, transistor-level emulation, it takes a 3 Ghz CPU. And that only gets you 5-10 FPS. D:
http://arstechnica.com/gaming/2011/...ghz-quest-to-build-a-perfect-snes-emulator/3/

So to answer the OP's question, there is not a single console that can be perfectly emulated (cycle for cycle) using consumer-grade hardware and achieve 2/3 or better performance to the original platform.
 
Last edited:

-Slacker-

Golden Member
Feb 24, 2010
1,563
0
76
As the people above said, multi-threading and video game emulators don't take kindly to one another. The most "advanced" emulator in that regard (that I can think of) is PCSX2, which uses 3 cores/threads, and that was in development for 10 years.

Even if the instructions that a GPGPU can handle are complex enough, it would still be impossible to write an emulator that can take advantage of 2866 cores ...
 

Anarchist420

Diamond Member
Feb 13, 2010
8,645
0
76
www.facebook.com
As the people above said, multi-threading and video game emulators don't take kindly to one another. The most "advanced" emulator in that regard (that I can think of) is PCSX2, which uses 3 cores/threads, and that was in development for 10 years. Even if the instructions that a GPGPU can handle are complex enough, it would still be impossible to write an emulator that can take advantage of 2866 cores ...
Well I stand corrected then.:) Also, the GTX Titan has 2688 cores, not 2866.
 

Cloudfire777

Golden Member
Mar 24, 2013
1,787
95
91
Not even a GTX Titan have the power to emulate PS3. Everything below have been emulated I think
 

Exophase

Diamond Member
Apr 19, 2012
4,439
9
81
A GPU is terrible for perfectly accurate emulation. Yes it can be done, but it'll be much less efficient than using CPU cores.

A fully cycle accurate GBA emulator could most likely be done with much less CPU time than a current high end desktop processor provides, at least for typical game cases and not some pathological tests. This is at a nice point because the CPU is a lot faster than SNES but it has a very simple pipeline with mostly static scheduling and it doesn't have cache or MMUs or branch prediction. The trickiest part about this is getting the various prefetch mechanisms to time right, particularly since no one has determined and documented how it's supposed to work. There's also a bit to work at getting bus contention cycles right for VRAM but nothing too awful to emulate if the full video access patterns are determined like they were for simpler systems.

Fully cycle accurate PS1 would be more demanding but probably still attainable. Reverse engineering the cycle timing for the GPU would be pretty hard.

Totally accurate SNES emulation could probably be done substantially faster than bsnes does it too but I'm not opening that can of worms..
 

Revolution 11

Senior member
Jun 2, 2011
952
79
91
How do you expect fully cycle-accurate emulation of PS1 to be attainable if such emulation for Pong is barely possible?
 

Exophase

Diamond Member
Apr 19, 2012
4,439
9
81
How do you expect fully cycle-accurate emulation of PS1 to be attainable if such emulation for Pong is barely possible?

You have to understand what cycle accurate emulation actually means.

DICE is a digital circuit simulator. You need it to directly simulate old games that were implemented with discrete hard-wired components instead of as a program that ran on a processor. An emulator of a conventional console doesn't really benefit from this approach. byuu mentioning it in that article is pretty much a red herring.

Cycle accurate doesn't mean perfect. It means that you capture the correct state at the edge of cycle boundaries. Most conventional logic works on this state and doesn't expose anything meaningful in between. There are exceptions but they're pretty esoteric. And more to the point, you can model cycle state behavior as a deterministic and reproducible abstraction. But if you want to go asynchronous and emulate the physics behind exact continuous timing then there's no such thing as perfect accuracy. Because the thing will behave differently depending on the environment, tolerances in the parts and wear, and just random quantum fluctuations.