Previous Thread
Next Thread
Print Thread
Page 3 of 4 1 2 3 4
Re: ZiNc: DynaRec and Plug-ins #10744 01/21/05 01:51 PM
Joined: Mar 2002
Posts: 119
D
DynaChicken Offline
Member
Offline
Member
D
Joined: Mar 2002
Posts: 119
it is if its pointing to the next opcode implementation. so your 'cache' would really be a set of

cache[] = { lui(opcode), ori(opcode), lw(opcode), sw(opcode), nop(opcode)};

Re: ZiNc: DynaRec and Plug-ins #10745 01/21/05 02:34 PM
Joined: Jun 2001
Posts: 262
M
Malice Offline
Senior Member
Offline
Senior Member
M
Joined: Jun 2001
Posts: 262
What about doing some form of branch prediction is that possible or practical?

Re: ZiNc: DynaRec and Plug-ins #10746 01/21/05 08:58 PM
Joined: Nov 2003
Posts: 804
S
smf Offline
Senior Member
Offline
Senior Member
S
Joined: Nov 2003
Posts: 804
Quote:
Originally posted by DynaChicken:
it is if its pointing to the next opcode implementation. so your 'cache' would really be a set of

cache[] = { lui(opcode), ori(opcode), lw(opcode), sw(opcode), nop(opcode)};
Yes, thats kinda like it. For the func opcodes I just decoded as op_func & then went back and modified the value in the cache on the first call.

smf

Re: ZiNc: DynaRec and Plug-ins #10747 01/22/05 07:14 AM
Joined: Mar 2002
Posts: 119
D
DynaChicken Offline
Member
Offline
Member
D
Joined: Mar 2002
Posts: 119
With MIPS, I wonder how much you actually save. Decoding the opcode is pretty easy but with this you still need to decode the arguments.

At least you make the next opcode pointer predictable for the CPU (means pre-fetchable CALL) instead of a pipeline stalling/memory dependant switch().

How much does it save on an Athlon/Pentium M compared to P4 ? Something for benchmarks wink

Still, the BIGGEST saving for MAME or ZiNc on the CPU core would be CORRECT memory timing. Which means that you do not have to execute 33 million instructions but rather waste tons of these on fetch/load/store.

And with MAME I would really suggest patching the fetch/load/store with correct timing, and then bother with caching interpreter/dynamic recompiler if you still feel like it. Its all about accurate emulation vs. playing the games

Re: ZiNc: DynaRec and Plug-ins #10748 01/23/05 03:27 PM
Joined: Nov 2003
Posts: 804
S
smf Offline
Senior Member
Offline
Senior Member
S
Joined: Nov 2003
Posts: 804
Quote:
Originally posted by DynaChicken:
Still, the BIGGEST saving for MAME or ZiNc on the CPU core would be CORRECT memory timing. Which means that you do not have to execute 33 million instructions but rather waste tons of these on fetch/load/store.

And with MAME I would really suggest patching the fetch/load/store with correct timing, and then bother with caching interpreter/dynamic recompiler if you still feel like it. Its all about accurate emulation vs. playing the games
Yes, dynamic recompilation will only happen once everything is 100% accurate and working. All the way along I've been relying on Intel/AMD bringing out faster processors to avoid having to optimise anything, maybe they'll pull another rabbit out of the hat.

Accurate timing is an alien concept to PSX emulation unfortunately. MAME doesn't even have half way accurate root counters yet, although I'm working on that.

smf

Re: ZiNc: DynaRec and Plug-ins #10749 01/25/05 09:26 AM
Joined: Mar 2002
Posts: 119
D
DynaChicken Offline
Member
Offline
Member
D
Joined: Mar 2002
Posts: 119
So with the rootcounters fixed, does it mean that you dont have to run as many instructions now ? Or is it still worth doing a big delay on every memory load ?

Re: ZiNc: DynaRec and Plug-ins #10750 01/26/05 08:28 PM
Joined: Apr 2002
Posts: 67
D
Darkfalz Offline
Junior Member
Offline
Junior Member
D
Joined: Apr 2002
Posts: 67
Well, 1.0 got slower than 0.9. 0.9 runs full speed the ZN games on my P3+Voodoo5 system. Not so for 1.0+. So I'm still using the older version for that system.

Re: ZiNc: DynaRec and Plug-ins #10751 01/27/05 01:00 AM
Joined: Mar 2001
Posts: 16,473
R
R. Belmont Offline
Very Senior Member
Offline
Very Senior Member
R
Joined: Mar 2001
Posts: 16,473
There's absolutely nothing different between 0.9 and 1.0 that would influence the framerate - if they're configured the same they should run the same.

Re: ZiNc: DynaRec and Plug-ins #10752 01/27/05 06:54 AM
Joined: Apr 2002
Posts: 67
D
Darkfalz Offline
Junior Member
Offline
Junior Member
D
Joined: Apr 2002
Posts: 67
Really? I'll try it out again then.

Re: ZiNc: DynaRec and Plug-ins #10753 01/27/05 12:23 PM
Joined: Apr 2002
Posts: 67
D
Darkfalz Offline
Junior Member
Offline
Junior Member
D
Joined: Apr 2002
Posts: 67
Nope, still slower than 0.9 on that system, same rendering settings. On 0.9 SFEX2P is 60 fps in game, in 1.1 it's fluctuating from 45 to 50 fps most of the time.

Something must have changed, better accuracy of emulation or sound or something, because it's certainly a tad slower.

Page 3 of 4 1 2 3 4

Moderated by  R. Belmont 

Who's Online Now
1 registered members (reenigne), 129 guests, and 1 spider.
Key: Admin, Global Mod, Mod
ShoutChat Box
Comment Guidelines: Do post respectful and insightful comments. Don't flame, hate, spam.
Forum Statistics
Forums9
Topics8,764
Posts115,179
Members4,889
Most Online890
Jan 17th, 2020
Powered by UBB.threads™ PHP Forum Software 7.7.3