Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
My vision about emulation
10-29-2018, 02:25 AM
Post: #3
RE: My vision about emulation
Well, arguably, PPSSPP is probably a lot less about accuracy than about speed, although we try. Some of it is the reality that we don't fully understand how it exactly works, and we're often doing hardware tests to narrow that down.

The NES ran at about 2 Mhz, which is less than 0.1% of modern systems. It had similarly slow RAM and everything else.

The PS3 has a 3.2 Ghz processor and 6 (usable by games) specialized cores. That's tough to emulate, it just is. And RAM access is much faster on this modern device.

So practicality is coming in because, really, it's just not useful to emulate at less than 5% speed. Which means you can't just build a 100% from scratch software model of the CPU units and make it cycle accurate.

As soon as you start translating things to the host instruction set, you start giving up accuracy on timing and sometimes calculation. Probably the host and guest processors deviate slightly in how they handle denormals. Prefetching might behave a bit differently. Branch prediction is slightly different.

The reality is that we're moving towards a place where we're scaling out CPU and GPU power - we've begun to hit a wall in effective speed. But emulating a CPU, because it depends on a relatively small register file, is mostly a single-threaded operation. At best, you do branch prediction and run basic blocks on separate cores and work it out later in your software model (sorta like modern CPUs already do.)

If you can think of a better way to spread out emulation to multiple cores, I'd love to hear it. Or maybe quantum computing will be amazing for emulation. But as we are now, we're hitting walls.

That doesn't mean accuracy isn't a goal, it just means it ends up being secondary.

I do think there's some possibility of specialized hardware to improve this. For example, imagine a usb dongle that does non-IEEE float operations the same way as a guest device. If it has low enough latency and is easy to access, this might be a practical way to increase accuracy without sacrificing a basic level of acceptable speed.

-[Unknown]
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
My vision about emulation - relu419 - 10-28-2018, 04:15 AM
RE: My vision about emulation - [Unknown] - 10-29-2018 02:25 AM
RE: My vision about emulation - TkSilver - 10-29-2018, 05:45 AM
RE: My vision about emulation - Rekrul - 12-10-2018, 08:22 AM

Forum Jump: