Psx4gp2x Dynarec Status Update


zodttd said:
I did a test of my current build of psx4gp2x. The test was with Buster Bros Collection which in-game can reach about 45 FPS @ 266MHz and interlace 1. That's besides the point though, because when I disable the GPU rendering and run the game it goes from 45 FPS to 85 FPS.

What does this mean? Well if were able to get the GPU to magically take zero overhead, framerates will nearly double! Most every game would run perfectly fine on the GP2X and sound can become a reality. Problem is you wouldnt be able to see anything...unless we can move the GPU to the second cpu. ;)

Unai mentioned when I was able to take the stress of the emulation from the CPU emulation and make things more 50/50 he/we would try it. Maybe it's time. :)
Jjeje you are not playing fair, Witch underclock are you ussing? Buster Bros almost doent need any cpu... we sould do thids test with teken or other cpu intesive games first.
 
Last edited by a moderator:
zodttd said:
Problem is you wouldnt be able to see anything...unless we can move the GPU to the second cpu. ;)
idea of moving playstation gpu to arm 940T is like having pentium emulated on 386SX/33...
 
Last edited by a moderator:
messiah said:
zodttd said:
Problem is you wouldnt be able to see anything...unless we can move the GPU to the second cpu. ;)
idea of moving playstation gpu to arm 940T is like having pentium emulated on 386SX/33...


So the 920T is what, a 486 33mhz??

Honestly I don't see the problem.
 
Last edited by a moderator:
messiah: Possibly...

I spoke to Squidge. If I heard him correctly, it seems since the 920 and 940 share the same MMU... Any usage of memory by the 940 (second) cpu *besides the 4KB of cache* will slow down the main 920 cpu. By how much, and whether the gain provided by the GPU on the 940 will outweigh any stress on the 920 is undetermined.

To say automatically that it makes no sense, is a poor choice. It might make sense in terms of performance if the conditions are right and the 920 doesnt get weighed down too much. But the effort involved in finding out, and possibly being dissapointed with the results, may not be worth it.

Either way, I have some things in mind.
 
crazy stuff. I am excited as hell. If you can get this thing anymore near fullspeed I will probably need to get another SD card ;-)
 
Might it make sense to use the second processor as the 'dominant' one with prime access to memory etc and the other as the gpu as it has bigger cache which means it might have to do less 'talking'. Won't the gpu require repeated operations one a particular set of variables / whatever, where a larger cache might be of benefit.

On the other hand the other PSX bits maybe will utilise a bigger cache better...

Just a stupid random thought, I have no idea what kind of problems/ architecture there is. I think I heard notaz or someone mention about running everything on the 940 just for kicks or something.

Anyway it sounds like quite a challenge to me - I'm sure no-one ever thought psx on gp2x was a simple porting matter though. Good luck/other voodoo stuff to you guys anyway!

Edit; Sorry, basically what I'm trying to say is that whatever has to access the system memory most should possibly get the processor with the least cache - assuming it doesn't need lots of cache mem too...
 
zodttd said:
messiah: Possibly...

I spoke to Squidge. If I heard him correctly, it seems since the 920 and 940 share the same MMU... Any usage of memory by the 940 (second) cpu *besides the 4KB of cache* will slow down the main 920 cpu. By how much, and whether the gain provided by the GPU on the 940 will outweigh any stress on the 920 is undetermined.

To say automatically that it makes no sense, is a poor choice. It might make sense in terms of performance if the conditions are right and the 920 doesnt get weighed down too much. But the effort involved in finding out, and possibly being dissapointed with the results, may not be worth it.

Either way, I have some things in mind.
You mean, they share the same memory bus? I'm pretty sure the 940 doesn't have an MMU. And of course it makes sense that they would, having two buses (and I suppose memory that can be ported on both at the same time, maybe through some kind of banking/interleaving) would be a lot more complex and expensive to implement.

I think the issue with the 940T may be that cache misses really hammer the memory bus a lot more than they appear to. The memory architecture used is designed to maximize bus level efficiency per CPU, unfortunately this can break down when you have two CPUs vying for the same bus. For instance, if you have a CPU working on a large set of data linearly (which will tend to happen in rendering graphics or audio) then the CPU will only get a cache miss at the edges of cache lines. Then, the CPU will only immediately need the first element in that line, so the delay won't be too great (and it can do other instructions in the mean time as well, if there are no dependancies). But the memory bus will be busy with not only the entire cache line being loaded, but quite likely another dirty line being retired as well. You can see how a single CPU can easily starve the bus, especially if there's only 4KB of cache. Then, that means that the time it takes to get that first element in the cache line can suddenly go up a lot when you have all of this cache replacement activity going on because of the other CPU.
 
Last edited by a moderator:
Good point Exophase. Also, yes there's only one MMU, so I must only assume they share the same memory bus. :)
 
sorry to interrupt, but The Dukes Of Hazzard- Racing For Home runs at an average of 9fps, 13 tops. its really quite playable! Cant wait for more releases. I would donate if I had any money.
 
Back
Top