Register - Login
Views: 99856136
Main - Memberlist - Active users - Calendar - Wiki - IRC Chat - Online users
Ranks - Rules/FAQ - Stats - Latest Posts - Color Chart - Smilies
05-04-22 11:55:03 AM
Jul - Gaming - Why do emulators run PCs so hard? New poll - New thread - New reply
Next newer thread | Next older thread
Craig341
Member
Level: 18


Posts: 50/50
EXP: 25972
For next: 3925

Since: 07-25-07


Since last post: 13.0 years
Last activity: 12.9 years

Posted on 05-11-09 05:36:29 AM (last edited by Craig341 at 05-11-09 02:40 AM) Link | Quote
I've always wondered why emulators tax my computer so hard: mainly Project 64. If the original CPU and co-processor are a total of 156.25 MHz and the games require 4MB of RAM, why does it run so hard on a computer with a 2 GHz processor and 3GB of RAM? Shouldn't the power of the N64 be nothing compared to the computer?

e: I mean, I can see some inefficiency, but it sends the CPU into overdrive when I play it at points.
Sails
2800
as a video game‎‎‎‏‏‎ grows old its content and‏‏‎ internal logic‏‏‎ deteriorateÿ
Level: 102


Posts: 1647/2803
EXP: 10923563
For next: 166404

Since: 07-04-07

Pronouns: He/Him
From: MA

Since last post: 121 days
Last activity: 29 days

Posted on 05-11-09 05:45:46 AM Link | Quote
Because you are emulating processors, which is a lot of work. That's about it. It's taxing on the system. Most emulators aren't very accurate to begin with, using various hacky ways to make things work, requiring low-end computers. However, something like BSNES, which is accurate, requires a nice computer to run correctly.

____________________
Eon

Hammer Brother
MLB
Level: 68


Posts: 686/1085
EXP: 2626329
For next: 102471

Since: 07-22-07


Since last post: 310 days
Last activity: 130 days

Posted on 05-11-09 06:58:30 AM Link | Quote
Emulator development has largely stalled the past few years. Their design mentality is rather outdated because of it, not taking advantage of what modern computers offer.

____________________
paulguy

Green Birdo
Level: 93


Posts: 184/2294
EXP: 8033270
For next: 19540

Since: 09-14-07

From: Buffalo, NY

Since last post: 9.7 years
Last activity: 9.7 years

Posted on 05-11-09 07:33:10 AM (last edited by paulguy at 05-11-09 04:36 AM) Link | Quote
There's plenty of emulators in the works nowadays. PCSX2, bsnes, regen, dolphin, some others. Even zsnes is having some work being slowly done on it. N64 emulation has pretty much stalled, though, as far as I know.

EDIT: as for the processor usage thing goes, emulation is hardly 1:1, since CPUs in consoles rarely have many similarities to each other, including PCs, so you can't just translate 1 command on one to 1 command on another. Not to mention all the other hardware like the sound and video chips. Then syncing it all together so things behave like they did on the original is a bunch more code.
Xkeeper

Level: 263


Posts: 10760/25353
EXP: 297174010
For next: 1786443

Since: 07-03-07

Pronouns: they/them/????????

Since last post: 4 days
Last activity: 10 min.

Posted on 05-11-09 04:07:35 PM Link | Quote
Originally posted by Craig341
I've always wondered why emulators tax my computer so hard: mainly Project 64. If the original CPU and co-processor are a total of 156.25 MHz and the games require 4MB of RAM, why does it run so hard on a computer with a 2 GHz processor and 3GB of RAM? Shouldn't the power of the N64 be nothing compared to the computer?

e: I mean, I can see some inefficiency, but it sends the CPU into overdrive when I play it at points.

Because something as simple as "ROR a" in the N64's processor turns into this:

- Increment emulator's CPU emulator pointer.
- Do operation (in cases of more complex or quirky commands, this can take several times longer than the original)
- Update emulator's hardware state timers/registers (will also take much longer)
- Any hardware quirks

On the whole:
- System timing (specific management of opcodes and timers, quirks in hardware, etc
- Rendering of the screen, which can be either slow (hardware-accellerated) or molasses (software)
- Any rendering quirks
- Sound processing, resampling, and etc


As said, emulating a system isn't a 1:1 operation. Consider that the NES ran at 1.7 MHz, but systems older than a few years will have problems emulating it accurately (via Nintendulator).

SNES emualtion is similar; the SNES ran at about 21.4 MHz, but even the beefiest systems can have trouble getting BSNES to emulate it at 60 FPS.

____________________
Drag
2640
Level: 99


Posts: 1160/2641
EXP: 9991234
For next: 8766

Since: 07-03-07


Since last post: 4.2 years
Last activity: 3.4 years

Posted on 05-12-09 12:14:50 AM Link | Quote
1160
In short, you're not just emulating the processor and ram, you're emulating the entire systems architecture of the console. That and most opcodes on these processors do not translate fully to x86 (the processor in your PC), so a lot of the manipulations are done in software, which equates to: One opcode on the emulator = Several opcodes on the PC.

Plus the audio/visual/input/whatever else needs to be emulated.

____________________
Hiryuu

Level: 207


Posts: 9525/14435
EXP: 127636215
For next: 2147939

Since: 07-06-07


Since last post: 11.8 years
Last activity: 11.7 years

Posted on 05-12-09 04:00:53 AM Link | Quote
Makes me wonder, since we're jumping the hurdle now, if the x64 architecture will make it any simpler or make it that much worse.

____________________
FPzero
9590



Post 3939/9597
Active
5.5 years ago
Posted on 05-12-09 04:05:38 AM Link | Quote
Seeing as it can be tough just to emulate SNES, it makes me wonder how people manage to get those Gamecube/Wii emulators running.

____________________
Hiryuu

Level: 207


Posts: 9527/14435
EXP: 127636215
For next: 2147939

Since: 07-06-07


Since last post: 11.8 years
Last activity: 11.7 years

Posted on 05-12-09 04:11:37 AM Link | Quote
Originally posted by FirePhoenix
Seeing as it can be tough just to emulate SNES, it makes me wonder how people manage to get those Gamecube/Wii emulators running.


Perseverance, Mountain Dew and Hot Pockets.

Lots of Hot Pockets.

____________________
Drag
2640
Level: 99


Posts: 1162/2641
EXP: 9991234
For next: 8766

Since: 07-03-07


Since last post: 4.2 years
Last activity: 3.4 years

Posted on 05-12-09 06:24:49 AM Link | Quote
1162
Originally posted by FirePhoenix
Seeing as it can be tough just to emulate SNES, it makes me wonder how people manage to get those Gamecube/Wii emulators running.


The newer the console, the closer it is to a PC than, for example, the SNES. I.E., I wouldn't be surprised if the 360 and PS3 have a video graphics interface that resembles something like OpenGL, or DirectX.

That, and I think with the NES and SNES, all of the cpu intensive stuff is just simply the software trying to emulate the hardware as faithfully as possible.

____________________
IIMarckus
Member
Level: 25


Posts: 25/111
EXP: 82300
For next: 7320

Since: 10-11-08


Since last post: 3.1 years
Last activity: 1.8 years

Posted on 05-12-09 10:29:47 PM Link | Quote
Originally posted by Drag
That, and I think with the NES and SNES, all of the cpu intensive stuff is just simply the software trying to emulate the hardware as faithfully as possible.

Right. Starting with the N64, a lot of emulators started doing high‐level emulation, with more of a “black box” style—instead of replicating the instruction set, the emulator instead implements the results. (See UltraHLE)
Deleted User
Collection of nobodies
Posted on 05-17-09 01:56:42 AM Link | Quote
Originally posted by FirePhoenix
Seeing as it can be tough just to emulate SNES, it makes me wonder how people manage to get those Gamecube/Wii emulators running.


I run snes fine..... -> snes9k download at http://www.megagames.com/news/show.cgi?&idtype=emulators&database=237§ion=downloads&

____________________


===================
[Posted by ficarra1003]
Next newer thread | Next older thread
Jul - Gaming - Why do emulators run PCs so hard? New poll - New thread - New reply


Rusted Logic

Acmlmboard - commit 47be4dc [2021-08-23]
©2000-2022 Acmlm, Xkeeper, Kaito Sinclaire, et al.

31 database queries.
Query execution time: 0.106836 seconds
Script execution time: 0.027098 seconds
Total render time: 0.133934 seconds