Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Yes, since the primary problem is trying to simulate dozens of unique processes that all run in parallel with a single CPU thread, modern processors are woefully inadequate for the task. Emulation is possible by way of sheer brute force, with processors being thousands of times faster than the original systems.

Multi-core seems promising, but unfortunately even 4-8 threads aren't going to cut it here. Each emulated chip can have several logic units (eg a four-stage pipeline, an ALU, a DMA unit, etc.) And even then, CPUs aren't meant for this level of synchronization. You can only lock and unlock a mutex between two threads at about 100,000 times a second. And even if that were faster, what's going to be more a burden? Requiring a 3GHz single core CPU, or a 1GHz octa core CPU?

FPGAs are great for writing emulators (although I wouldn't say as easy), but the problem with this is even worse than the octa core CPU. Until more people have the hardware than a 3GHz single core CPU, it will continue to be a worse solution for the number of people your software can reach.



Byuu himself! :D

It's great to see you on here. I've read a lot of the writeups on your site and they're very, very fascinating stuff. BSNES/Accuracy has become my favorite emulator as well, when I can spare the clock cycles.

So thanks for being awesome, and doubly thanks for your attention to detail when nobody else seems to think its important.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: