Power Of The Gp2x


matbuk03

Still Fresh
Joined
Apr 27, 2006
Messages
13
Does anyone know how powerful (in terms of 2D & 3D) the GP2X is compared to say something like the Nintendo DS.

On Craigs review of the mk2, he said that the GP2X was four times as powerful as the DS but is this simply in terms of clock rates and cores? Does it take into account the DS's 3D Hardware? Could the GP2X chuck around four times the number of polygons without the dedicated 3d capabilities?

Anyone care to guess on the sought of poly's per second the GP2X could push when optimized ?

I understand that the main draw of the Gp2x is it's ability to play all the old 2d 8/16bit era games but some nice 3D games would be cool.
 
MattB posted on May 12 2006 at 06:51 PM said:
Does anyone know how powerful (in terms of 2D & 3D) the GP2X is compared to say something like the Nintendo DS.

On Craigs review of the mk2, he said that the GP2X was four times as powerful as the DS but is this simply in terms of clock rates and cores? Does it take into account the DS's 3D Hardware? Could the GP2X chuck around four times the number of polygons without the dedicated 3d capabilities?

Anyone care to guess on the sought of poly's per second the GP2X could push when optimized ?

I understand that the main draw of the Gp2x is it's ability to play all the old 2d 8/16bit era games but some nice 3D games would be cool.
Well the 2x has no 3D hardware where as a DS can do 60FPS on one screen or 30FPS on both screen in 3D with its 3D hardware. That is all that is known about the DS's 3D capabilities I think.

Really it depends on the circumstances and the coder.
 
Last edited by a moderator:
The payback demo is probably the best example of how fast the gp2x can handle 3D at the moment and that includes software antialiasing.

The DS 3D hardware isn't as advanced as it might have been, it is quite limited compared to other systems.
 
MattB posted on May 12 2006 at 11:51 AM said:
Does anyone know how powerful (in terms of 2D & 3D) the GP2X is compared to say something like the Nintendo DS.

On Craigs review of the mk2, he said that the GP2X was four times as powerful as the DS but is this simply in terms of clock rates and cores? Does it take into account the DS's 3D Hardware? Could the GP2X chuck around four times the number of polygons without the dedicated 3d capabilities?

Anyone care to guess on the sought of poly's per second the GP2X could push when optimized ?

I understand that the main draw of the Gp2x is it's ability to play all the old 2d 8/16bit era games but some nice 3D games would be cool.
I think it should be fairly capable in this regard. "Polygons per second" is a not-very-useful number, for a couple of reasons:

1) How big are the polygons? This is hugely important and PPS ignores it. It determines the number of pixels that must be filled
2) How are polygons filled? There's a large range of capabilities -- flat shaded, gouraud shaded, affine texture mapped, perspective-correct texture mapped, per pixel ligting, etc.

It would be nice if there was some sort of standard benchmark that could be used but really the important metrics depend on the application.

We know from the Yeti3d demo and so on that there is some definite capability there. The Vincent port also looks promising. Lots of hobby coders seem to be working on 3D engines (including me), but it's a large programming task and takes time, especially to optimize.

I think we'll see some good 3D stuff, but it'll take some time.

Is there a particular sort of 3D game that you'd like to see?
 
Last edited by a moderator:
I think a fair few people have asked about a racing sim ala Need for speed or Gran Turismo. This is the sort of thing i'd like to see. Given that PSX emulation seems to be coming on nicely those games may someday become available through emulation. If that's the case, a similar game written specifically for the GP2x could be amazing.
 
The Nintendo DS does appear to have some simple 3D hardware, but it's not capable of very much. The ARM9 can only draw to one display per frame, so to write to both displays it must do one at a time for 30 FPS operation.

The Nintendo DS' ARM9 runs at only 67 MHz (it is an ARM946E-S), while the GP2X's main CPU (ARM920T) runs at 200 MHz and usually, overclocks easily to 240 MHz, 266 MHz or higher with stability. The ARM940T Coprocessor at 200 MHz' implementation is limiting due to its lack of an MMU and smaller cache, but it is arguably more useful in aiding intensive operations than the DS' ARM7TDMI coprocessor at 33 MHz. The GP2X has no 3D hardware, but its processing capabilities far exceed those of the DS.

The DS has ~4MB of main memory for use, while the GP2X has 64 MB of SDRAM total with approximately 25MB of the lower 32MB free (the rest occupied by the Linux OS software's memory footprint) and about 16MB of the upper 32MB of RAM, for a total usable quantity of approximately 41MB. A very substantial advantage.

For 2D applications, the Nintendo DS has an advantage in that it can perform operations like sprite scaling and rotation in hardware without burdening the ARM9/ARM7 processors. The GP2X does not share this advantage and must perform these operations on the ARM920T (or potentially the ARM940T) which is usually a costly and floating-point heavy task. Well-programmed it can be efficient but it's simply quite inconvenient. The DS has an advantage here for very high-end 2D processing utilizing these effects, but since they are often mis-used as 'gimmicks' with no real benefit to the gameplay experience, many won't miss hardware support for these two features.

The GP2X has a dedicated blitter that can rapidly blit 16-bit surfaces together and perform some other operations like rapid screen filling, without burdening the ARM920T or ARM940T. This greatly accelerates the operation of 2D games and potentially some forms of 3D ones that utilize 2D graphics surfaces. Paeryn's Hardware-accelerated SDL facilitates easily implementing this in applications.
 
The GP2X is very good on the 2D front. It contains a 2D processor as well as a dedicated video decoder. However it struggles behind (not too far behind, though) the DS on 3D because of the lack of dedicated hardware and an FPU. Also note the RAM and processor differences, and you get quite an accurate picture of the capabilities of the two systems. Needless to say, neither system has been pushed to its full potential as of yet.
 
nickspoon posted on May 12 2006 at 06:18 PM said:
The GP2X is very good on the 2D front. It contains a 2D processor as well as a dedicated video decoder. However it struggles behind (not too far behind, though) the DS on 3D because of the lack of dedicated hardware and an FPU. Also note the RAM and processor differences, and you get quite an accurate picture of the capabilities of the two systems. Needless to say, neither system has been pushed to its full potential as of yet.

The DS' advantage on the floating-point side of things is that it can probably sneak floating-point intensive operations by as operations on the 2D/3D graphics helper hardware and leave fixed-point math ONLY for the ARM9 and ARM7 to crunch. I'm finding new ways to dodge using floating point math everyday though, and I've eliminated every significant trace of it from my engine so far. Homemade 3D applications can use fixed-point math quite easily, but games that are being ported that already rely heavily on rapid floating point execution like Quake do love to lag behind. (Though with enough raw CPU horsepower, Quake runs great. At 266 MHz it's extremely smooth, and at 305 MHz+ it's glorious.) And let me tell you, that game is float-heavy like no other I've encountered. The game script (progs.dat) contains NO means of defining a fixed-point integer data type! A floating point variable MUST be used so if your health is for example 100 it's stored as 100.00000 or similar. :p
 
Last edited by a moderator:
MattB posted on May 12 2006 at 05:51 PM said:
Does anyone know how powerful (in terms of 2D & 3D) the GP2X is compared to say something like the Nintendo DS.

On Craigs review of the mk2, he said that the GP2X was four times as powerful as the DS but is this simply in terms of clock rates and cores? Does it take into account the DS's 3D Hardware? Could the GP2X chuck around four times the number of polygons without the dedicated 3d capabilities?

Anyone care to guess on the sought of poly's per second the GP2X could push when optimized ?

I understand that the main draw of the Gp2x is it's ability to play all the old 2d 8/16bit era games but some nice 3D games would be cool.


Honestly I would not buy a Gp2X based on 3D capabilities. It only does it by brute force and hard work from coders. Due to this lack of convienient 3D hardware, 3D games will be few and far between. If it is 3D you want get a PSP, it's 3D capabilities far exceed anything the GP2X will ever do.

Now if it is 2D and emulators you want the GP2X is the best choice right now.
 
Last edited by a moderator:
Dzz posted on May 12 2006 at 08:07 PM said:
Is there a particular sort of 3D game that you'd like to see?

Perhaps a very simple game could be a nice 3D begining on Gp2X.
Something like a Tetris3D ?
After that, I would like to see a fabulous 3D adventure-reflexion game :)
 
Last edited by a moderator:
Epicenter posted on May 12 2006 at 04:14 PM said:
. . . the GP2X has 64 MB of SDRAM total with approximately 25MB of the lower 32MB free (the rest occupied by the Linux OS software's memory footprint) and about 16MB of the upper 32MB of RAM, for a total usable quantity of approximately 41MB. A very substantial advantage.

For 2D applications, the Nintendo DS has an advantage in that it can perform operations like sprite scaling and rotation in hardware without burdening the ARM9/ARM7 processors. The GP2X does not share this advantage and must perform these operations on the ARM920T (or potentially the ARM940T) which is usually a costly and floating-point heavy task. Well-programmed it can be efficient but it's simply quite inconvenient.

Two quick questions:

I thought if you unload the Movieplayer driver, which is using the second ARM9(or write all over it's RAM area) you can get all the upper memory area back to play with, or do I misunderstand?

I thought the GP2X's 2d had scale and rotate in hardware for free, is that just the entire screen and not for sprites or what?

virusx posted on May 12 2006 at 05:35 PM said:
Perhaps a very simple game could be a nice 3D begining on Gp2X.
Something like a Tetris3D ?

http://www.chroniclogic.com/index.htm?triptych.htm Like this?

Seriously you must try it, then I dare you not to buy it :)

Try Gish too, also by Chronic Logic, a simple appearing, yet suprisingly complex game.
 
Last edited by a moderator:
virusx posted on May 12 2006 at 06:04 PM said:
Hehe the 3D tetris isn't exactly what I had in mind :p
But the Gish game is really cool ! A must try !

Did you try it? It is seriously cool, it is not really tetris at all. At least play till you get 3 or 4 different colors to explode from one set of falling blocks :D :D.

Play it with a Sony PS1 controllor for the best possible effect (Gish or Triptych)
 
Last edited by a moderator:
nubie posted on May 12 2006 at 07:49 PM said:
Two quick questions:

I thought if you unload the Movieplayer driver, which is using the second ARM9(or write all over it's RAM area) you can get all the upper memory area back to play with, or do I misunderstand?

I thought the GP2X's 2d had scale and rotate in hardware for free, is that just the entire screen and not for sprites or what?

Exactly; the whole display in 90 degree increments only. I think the uppermost 16 MB is reserved for DMA in the Linux OS.
 
Last edited by a moderator:
DaveC posted on May 13 2006 at 12:58 AM said:
Honestly I would not buy a Gp2X based on 3D capabilities. It only does it by brute force and hard work from coders. Due to this lack of convienient 3D hardware, 3D games will be few and far between. If it is 3D you want get a PSP, it's 3D capabilities far exceed anything the GP2X will ever do.

Don't get me wrong. I think my Gp2x is great. Some of the emulators are perfect with others getting better everyday. I just thought the odd free or commercial 3D game (Like Payback) would be nice and if i wanted to see one type of 3D game available it would be a racing one.
 
Last edited by a moderator:
I disagree that DS is better for 2D than GP2x.

You can have multiple playfields and tons of sprites using just 920T. With blitter and some hardware tricks (videoproc, postproc) the GP2x is even better. Note also the memory difference - the 64MB in GP2x is huge andvantage.

For 3D the DS have some kind of hardware acceleration. It's big plus but at other side the GP2x has much more general CPU power. GP2x can do decent 3D for sure. With some skilled programmer and utilising both cores perhaps even very good.
 
If a small renderer can be fit into the 940T cache we could see some very impressive performance from 3D games, even just on the 920T some rather neat things are within grasp.

Payback's real problem with framerate seems to come from 2 things-- useless expensive effects like the heat ripple on explosions, and supposed 'antialiasing' which sounds to me an awful lot like it's just being rendered 4x as large as needed and scaled down at the end of each frame which will cause the framerate to plummet. It's pointless too; it looks jagged still.
 
Radek posted on May 13 2006 at 03:25 PM said:
I disagree that DS is better for 2D than GP2x.

You can have multiple playfields and tons of sprites using just 920T. With blitter and some hardware tricks (videoproc, postproc) the GP2x is even better. Note also the memory difference - the 64MB in GP2x is huge andvantage.

I thought linux eats up half of that 64 MB leaving us with only 32 MB? I suppose if we throw out linux you would be right.
 
Last edited by a moderator:
Epicenter posted on May 13 2006 at 10:52 AM said:
If a small renderer can be fit into the 940T cache we could see some very impressive performance from 3D games, even just on the 920T some rather neat things are within grasp.

Payback's real problem with framerate seems to come from 2 things-- useless expensive effects like the heat ripple on explosions, and supposed 'antialiasing' which sounds to me an awful lot like it's just being rendered 4x as large as needed and scaled down at the end of each frame which will cause the framerate to plummet. It's pointless too; it looks jagged still.

I think jaggies can't really be avoided entirely because of the 320x240 display and the color bit depth we are working with.

Question though, isn't the hardware scaler on the video output "free" in hardware?

I thought this was an early teaser preview, they aren't done optimizing yet, am I wrong?
 
Last edited by a moderator:
nubie posted on May 13 2006 at 02:47 PM said:
Epicenter posted on May 13 2006 at 10:52 AM said:
If a small renderer can be fit into the 940T cache we could see some very impressive performance from 3D games, even just on the 920T some rather neat things are within grasp.

Payback's real problem with framerate seems to come from 2 things-- useless expensive effects like the heat ripple on explosions, and supposed 'antialiasing' which sounds to me an awful lot like it's just being rendered 4x as large as needed and scaled down at the end of each frame which will cause the framerate to plummet. It's pointless too; it looks jagged still.

I think jaggies can't really be avoided entirely because of the 320x240 display and the color bit depth we are working with.

Question though, isn't the hardware scaler on the video output "free" in hardware?

The scaled video has no filtering and is just nearest-neighbor, IIRC. So he'd have to use some sort of software routine like bilinear filtering to get smoothing of jaggies. Like the old 'supersampling' method of AA used back in the 90's. It was horribly inefficient.

You can avoid them with enough antialiasing but the performance cost will be terrible.

According to Paeryn only the uppermost 16 MB is reserved for DMA functionality and the bottom 16mb is free; while 7 MB or so of the lower 32MB is used by the Kernel and rest of the Linux OS. So the final figure is 41MB.
 
Last edited by a moderator:
Back
Top