[blog] Threading VU1
#11
(08-14-2011, 10:44 AM)rodiablo Wrote: How about building a internal VU1 cache database (wich would contain the VU1 information about the GIF packet and registers it had wrote to) into a PCSX2 debugger special build for beta-testers? You could, at the worst scenario, improve VU threading for those few games that DO write to those privileged GS registers you talked about. And maybe it could lead to new ideias about other parts of the emulator while analysing the code generated by this special debugger (just a thought, not sure).

In pcsx2 dev builds i already have code that checks for games that do this while running MTVU.
Errors messages will appear on the console showing the privileged registers they write to.
Check out my blog: Trashcan of Code
Reply

Sponsored links

#12
(08-14-2011, 12:17 PM)andutrache Wrote: It also sprung to my mind now why you can't make a recompiler for the EE cache.

actually the reasons for that are unrelated to this article Tongue2

(08-14-2011, 12:17 PM)andutrache Wrote: Also a side question: Wasn't the EE supposed to be communicating in dual pipeline style with the other components (2 instructions at once)?

no the EE runs 2 instructions at once with its superscalar pipeline. But the way the EE can communicate to other components is by scheduling DMA transfers (using dma channels like GIF and VIF), or by writing and reading mem-mapped registers of the various components.
i.e. the EE can read VU1's memory because its mapped at address 0x1100c000.
So with some code like:
Code:
u32* vu1Mem = (u32*)0x1100c000;
printf("%x, %x, %x, %x", vu1Mem[0], vu1Mem[1], vu1Mem[2], vu1Mem[3]);

You can see whats in the first 4 32-bit vectors of VU1 memory.
Check out my blog: Trashcan of Code
Reply
#13
(08-14-2011, 12:23 PM)cottonvibes Wrote: In pcsx2 dev builds i already have code that checks for games that do this while running MTVU.
Errors messages will appear on the console showing the privileged registers they write to.

Cool Smile . The Dev build did play a important role while developing MTVU, for sure. I should have known this. But trying to think when you're falling asleep is bit hard. So I have nothing to add, unfortunately. Tongue

I just have one more question, not related to this article (and I think there is no need to open a topic just to ask it):

Cottonvibes, do you (or anyone else on the team) intends to finalize the new DMAC Justin left incomplete? Just out of curiosity. Sorry, I do not recall having read anything about that in my relatively recent visits to the pcsx2's GoogleCode page.

EDIT: Sorry, I meant Jake. Not Justin. Danm, I need some sleep.
_____________________________________
Pentium Dual Core E5300@4GHz by AKASA Nero
Nvidia 9600GT XFX stock
3GB DDR2 800MHz

Sorry for my bad english.
Reply
#14
Who's Justin? Tongue2
Core i5 3570k -- Geforce GTX 670  --  Windows 7 x64
Reply
#15
oh my lord... You see? Sleep deprivation... I meant Jake, of course. I'm going to bed right nowBlush

And I hope Jake don't read this.

And I think I'm gonna brake some sisters favorite teen pop CD when I wake up. Evil

Justin... I hate that guy and I just can't hear that goddamn cd anymore. And my sister loves that sh1t and put it to play every single day. Angry
_____________________________________
Pentium Dual Core E5300@4GHz by AKASA Nero
Nvidia 9600GT XFX stock
3GB DDR2 800MHz

Sorry for my bad english.
Reply
#16
good read, now port the ee cache over to recompiler Tongue
Reply
#17
Hey,can make such expert explanation why MTVU1 gives boost on 2 core CPUs?

Love reading these blogs Smile
Reply
#18
I can give non-expert explanation for that:
EE&VU on 1st core + GS on 2nd core - without MTVU.
If GS was pretty low and EE or VU were going very high turning on MTVU divides it to
EE on 1st core + GS/VU on 2nd core
or
VU on 1st core + GS/EE on 2nd core
=
profit O.o

At least by my lame understanding...
Reply
#19
if the game uses GS heavily, the boost is either faking the fps, faking the fps and running slower, or just running slower with dual core cpu's.

Games that are running faster, are probably lighter on the GS thread that mtvu is sharing a core with.....

so yeah, seconding what miseru said.
Reply
#20
you wont get any benefit ( whether dual or quad ) if you are GS limited Wink
Reply




Users browsing this thread: 1 Guest(s)