A Quick Blog Entry About Gp2x Performance..


skeezix posted on Oct 14 2005 at 03:51 AM said:
Jengo posted on Oct 13 2005 at 02:01 AM said:
This is a very interesting Discussion,

Although i am no Programmer, and certainly dont know the in's and outs of this hardware. I do know that in the PC world 2 processors are always better then one. Always.

If we were talking about 2 pentium 2s@ 200mhz each vs 1 Pentium 2@400Mhz And the operating system supported Dual CPUs, And the chipset was a fairly Decent one. There is no way in hell the Single P2@ 400mhz could outclass the Dual P2 Setup, NO WAY. ESPECIALLY if the dual setup had MORE Ram. There is no way in hell. I dont know about you guys but i am truly without doubt that the GP2X will walk all over the PSP in 2D performance. Unless.... Unless, the GP2X had a horrible Chipset Architecture, Unless somehow the people designing the chipset screwed up the data flow between Both CPUs AND Ram, this is a very big part of getting great Performance out of the Two CPUs. It is a BIG necessity that the ram be easily Managed between both CPUs, a great example of ram management in Dual Processor setups would be the Athlon X2 Series of Processors, these guys really knew what they were doing when designing this architecture. Although the AX2 line are in many ways 2 processors on one silicon wafer it IS a dual cored SINGLE processor. but its Dual Cores make it in MANY ways just like a Dual CPU Setup.

I think the GPX2 will be very satisfying for Develpers that know how to use both processors in sync. Hopefully the Ram and CPU managment is Decent so we can see pretty games. ;)

Completely wrong of course ;)

Consider..

If a PC had 2 200MHz processors (not hard to find either; I had one such system board years ago.), what if it was running a non-multi-cpu OS.. such as DOS? It'd run as a 200MHz system with the second chip unused entirely. Easy example ;)

Some OSes and applications can 'automagicly' make use of multiple cores/cpus; its not uncommon these days, but not really common either; some OSes will spread _threads_ (lightweight processes) across CPUs, but others will only spread whole processes, while still others will only spread on demand or as requested (by the OS or applications.) Often it depends on configuration.

So, a single thread application like most apps, and most emus for sure, cannot be magicly made to spread out among CPUs, and so it would not gain much benefit at all from a second chip.

Your error is simple - you're thinking in terms of a PC with a complex OS (Windows say), running desktop stuff (Web browsing, email, all at the same time.) In that case we have an OS reasonably aware of things, able to split up whole processes across CPUs - email on one, mail on the other, say.

But for a game handheld, where one app is running and nothing else.. theres nothing to shove to the other side 'automagically' and you can't magicly' split up an app in two. You've got two highways and one car, and so it doesn't help. If you had two cars (two threads or processes), and one going slow .. one road would suck, but two roads would let the seocnd car fly by the first.

The developers need to add the second car.

jeff

I understand what you are trying to say, but you make it sound like splitting processes between two cores is difficult, i may not be a Programming Expert, but i do know that it isnt impossible. As soon as developers get a hold of the Hardware they will figure out how to do this, regardless of how long it takes them. Not only that but im sure GPH is making at least a Decent developers kit. You act like we are just gonna start with a Blank GP2X and then figure out what we gotta do with it. Im sure GPH has already found ways to split up processes for each CPU and/or found out at least methods of doing this.

Im sure and almost positive GPH is doing everything they can to make Developing easier for everyone, they didnt just walk into a factory pick out parts and then throw them at us and tell us to develop things for it. Im sure some care went into the hardware and the Developers were always in mind, thats how it should be. The only company i know of that almost completely disregards difficulty of Development is Sony, and as we all can see now, the effort put into their hard to develop for console has paid off, deveopers have found ways to get around PS2s tricky hardware, thats how it always is for a while, but then the tricky hardware shows its power.

I understand it will most likely be pretty tricky to develop anything on the GP2X at the biggening (using both cores) but dont make it sound like a nightmare from hell. Patience is what really will count in developing something that will use both CPUs, With Patience comes progress. Multi-core is the way of the future, and it pays off... i mean... just look at the Xbox 360 and PS3, it pays off in the end.

my whole point of my blabbering like a fool is: Dont underestimate the GP2X just because it has 2 cores. Like they say... Two cores are better then one!!
 
Last edited by a moderator:
Lets throw out the kernel supplied by GPH then.
We need a super slimmed Linux 2.6 kernel and dual core support ;)
 
Not sure if it has been mentioned yet, but wouldn't two 200mhz cpus also make high overclocking more likely?

Just as a though experiment: two 200mhz both overclockable to 230mhz = 460mhz (yeah I know, it can't be written like that),
but a 400mhz overclockable by 60mhz is less likely than two 200mhz both by 30mhz.

Or am I completly wrong?
 
Jengo posted on Oct 14 2005 at 07:17 AM said:
I understand what you are trying to say, but you make it sound like splitting processes between two cores is difficult, i may not be a Programming Expert, but i do know that it isnt impossible. As soon as developers get a hold of the Hardware they will figure out how to do this, regardless of how long it takes them. Not only that but im sure GPH is making at least a Decent developers kit. You act like we are just gonna start with a Blank GP2X and then figure out what we gotta do with it. Im sure GPH has already found ways to split up processes for each CPU and/or found out at least methods of doing this.

...my whole point of my blabbering like a fool is: Dont underestimate the GP2X just because it has 2 cores. Like they say... Two cores are better then one!!

Well Skeezix is an L337 programmer so if he says it is difficlt it must be. It won't be impossible but it is much more involved than if it just had a single 400 MHz CPU.
 
Last edited by a moderator:
Its not overly difficult, but it takes some work; all I was saying is that a simple port will not likely get much benefit, but obviously with work it could. If it was a pure 400MHz, then all apps would immediately gain the benefit, and this is what is being debated above :) I quote you:

I do know that in the PC world 2 processors are always better then one. Always.

ie: 2 != 1, though one cannot argue 1 > 2 or 2 > 1, but merely 1 <> 2.

So the devs will have to take the time to do it, whereas if it was a straight 400MHz than it woudl be 'magic' and not a worry. As always, its a little of this and a little of that.. and thats that :)

Note that GPH isn't famous for having a clue when it goes to making software, publishing software, making SDKs etc, and thats why the Linux kernel will be a huge boon -- GPH doesn't have to write up any of this, asd the kernel provides the services needed by the developer. The SDK is mostly just basic Unix plus SDL, standard stuff - a very good thing.

jeff
 
DaveC posted on Oct 14 2005 at 02:09 PM said:
Well Skeezix is an L337 programmer so if he says it is difficlt it must be. It won't be impossible but it is much more involved than if it just had a single 400 MHz CPU.

No dave they are making different points, and nobody is stricty wrong.

1)Jengo takes his experience of a multiprocesser desktop enviroment and says all is good. And it is a single program doesn't cripple the machine.

2)Skeezix is making the distiction or running a single dedicated app on a single processer, and having that app take advantage of the second processor is a different kettle of fish.

3)Jengo says surely a proper api would allow a single app to take advantage of the hardware regardless of the number of processers.

They are not do much disagreeing as talking at odds, to do with use and usefulness, and a different types of programming.

I did Occam at unerversity and have prayed since that moore's law applies throughout my lifetime.
 
Last edited by a moderator:
I woudl expect the first two things to occur (in emus and homebrew), because they're easily done..

o Sound generation and stream management on 'other cpu'
o Blitting of backbuffer to display surface by 'other cpu'
....o (Later) Construction of the backbuffer from snapshotted display lists on 'other cpu'

More complex multi-cpu emulators could really get a boost (assuming no resource contention and such, since cpu emulators tend to be separate from each other), and timing shoudlnt' be too bad for many of them; I think Genesis/MegaDrive could get a nice boost for instance, but more complex machines like the Amiga, done 'just right', could be a right pain (at a guess, without much thinking) to keep timing right.. but big boosts all around.

(In practice, if there is little timing dependancies between work units, they're often easily separate to threads/cpus, but if there is a lot of 'cohesion' between work units, it becomes a pain and harder to gain benefits.)

jeff
 
Just as a matter of interest have you run the Dhrystone benchmark. I'd love to know the result.
 
Cyclops posted on Oct 14 2005 at 03:04 PM said:
Just as a matter of interest have you run the Dhrystone benchmark. I'd love to know the result.

Good choice, as IIRC Dhrystone is integer only so well suited. Maybe Squidge or someone who actually has a device could do it ;)

jeff
 
Last edited by a moderator:
Cyclops posted on Oct 14 2005 at 07:57 PM said:
so its 2.5 times faster than a PSP hmmmm

wo were the heck did the math go on that one. :rolleyes:

If we are saying it was equal to 400mhz well lets see 400 divided by 333 is 1.2x faster. Even if we said the psp was clocked at 233mhz then it is 1.7x faster.

I still don't like to call it 400mhz though, because it is not. *shocker to everyone*
 
Last edited by a moderator:
reallynotnick posted on Oct 15 2005 at 02:43 AM said:
Cyclops posted on Oct 14 2005 at 07:57 PM said:
so its 2.5 times faster than a PSP hmmmm

wo were the heck did the math go on that one. :rolleyes:

If we are saying it was equal to 400mhz well lets see 400 divided by 333 is 1.2x faster. Even if we said the psp was clocked at 233mhz then it is 1.7x faster.

I still don't like to call it 400mhz though, because it is not. *shocker to everyone*

PSP runs at 125 MIPS. So if what lucoxade said is true then that would make it 2.5 times faster(on one core). Even if the PSP is a really old chip I would still be surprised. The PSP chip is really old, and mhz is a really bad indication of speed(not even intel talk about it anymore, and gave up long ago). Truth is I suspect the Power of the PSP is elsewhere. I'm begining to suspect this MHz thing is a misnomer, and I think a simple benchmark would put it to bed.

Also I think refering to the CPU as a 400Mhz is more useful to anyone but the people who have to do the dirty work. As most people are under the impression that the 940T is there to look pretty in a spec sheet.
 
Last edited by a moderator:
yeah, mhz doesn't mean much when comparing two different processor types.
 
OH, I did not think they were that different.

Well I have been on board the whole not compairing processor mhz bandwagon for ever (for I am a mac user and all).

How can it be that much faster then the psp though, I mean are emulators going to be 2.5x faster on the gp2x then the psp. Or can emulators on the psp use its graphics chip to speed up emulation.
 
Jarska333 posted on Oct 15 2005 at 03:45 PM said:
Oe noes, 2.5 times faster NES.... I can barely keep up with the regular one. :(

Can't there be a FPS lock at 60 or something? For example, I have EPSXE on my 3.6 ghz p4 and with out the 60 fps lock everything goes way too fast, but with the lock turned on everything is fine.
 
Last edited by a moderator:
Back
Top