Why does emulation require X amount of cpu to for accuracy?

285 viewsOtherTechnology

This is something I am having trouble wrapping my head around. Say for example PCEm. It can emulate up to Pentium II, however Pentium III is nearly impossible due to current hardware restraints. However, a Pentium III is 433mhz (if I remember correctly) and modern CPUs are well into 5ghz range. However, to accurately emulate a 433mhz you need x amount of CPU.

Why is that the case? If the CPU you’re using to perform the emulation is vastly more powerful?

I read it’s same even for the Super Nintendo, it ran 5mhz, and for accurate emulation you’d need 3Ghz (which is around today, but wind back a few years ago it would the the same question).

Hopefully it makes sense, I am still trying to understand emulation on a deeper level. Happy to have any links to any docs that answer this question as well.

In: Technology

10 Answers

Anonymous 0 Comments

As others have pointed out, emulation is hardware running software pretending to be hardware running software.
It’s not very efficient to do, which is why it costs extra computing power.

Also, instruction sets are not the same. The commands that the software inside the emulator gives to the pretend-CPU its running on might not be available on the actual physical CPU doing the work.
That means that the emulation software needs to do a translation, which again costs computing power.

Emulating the rest of the hardware also needs translation. For instance, the sound chip of a SNES works way different than that of the PC running the emulation.

As for emulating a Pentium2 or Pentium3 (up to 1.4 Ghz btw, not 433Mhz) machine, it should be relatively easy since modern x86-64 CPU’s (like AMD Ryzen and Intel Core) still support most (if not all) the instructions older Intel and AMD CPU’s supported.
The emulation software should be able to just pass through commands instead of needing to translate.
Maybe it just doesn’t, or it emulates some custom graphicscard from way back when that needs translation for it to work on a modern GPU.

You are viewing 1 out of 10 answers, click here to view all answers.