Faster Brew Platform for Graphics / Games? | developer.brewmp.com Faster Brew Platform for Graphics / Games? | developer.brewmp.com

Developer

Faster Brew Platform for Graphics / Games?

Hello Fellow BREW Developers,

I am trying to determine which current BREW platform or handset is the absolute fastest when it comes to graphics and animation. Basically I am trying to decide on a target platform for an upcoming title. It's an action game, so quick display updates and smooth, responsive controls are key to the overall gameplay.

Our initial "guess" was the LG-VX6000, but after doing a quick forum search on this platform it seems like perhaps that was a poor start.

So. . . what is the fastest BREW platform? In your experience, which handset provides the smoothest display updates and the highest framerates for your applications? Any help or advice you can offer will be very helpful and very much appreciated.

Thanks,
-GLDChad

The fastest one currently in the market is the Audiovox CDM-8900 it seems. When the vx7000 is being officially launched it will be the fastest one some time next month. The Samsung a790 that has been launched a week or so ago is also very fast.

The fastest one currently in the market is the Audiovox CDM-8900 it seems. When the vx7000 is being officially launched it will be the fastest one some time next month. The Samsung a790 that has been launched a week or so ago is also very fast.

How do the other VX-xxxx models stack up? The 4400/4500, 5xxx? Are any of these resonably faster than the VX-6000 which seems to be receiving so much bad press on these forums?

How do the other VX-xxxx models stack up? The 4400/4500, 5xxx? Are any of these resonably faster than the VX-6000 which seems to be receiving so much bad press on these forums?

I apologize for the double post. This is also in the Brew 2.0 forums, but it is probably more appropriate here: :o
I am trying to determine which current BREW platform or handset is the absolute fastest when it comes to graphics and animation. Basically I am trying to decide on a target platform for an upcoming title. It's an action game, so quick display updates and smooth, responsive controls are key to the overall gameplay.
Our initial "guess" was the LG-VX6000, but after doing a quick forum search on this platform it seems like perhaps that was a poor start.
So. . . what is the fastest BREW platform? In your experience, which handset provides the smoothest display updates and the highest framerates for your applications? Any help or advice you can offer will be very helpful and very much appreciated.
Thanks,
-GLDChad :)

I apologize for the double post. This is also in the Brew 2.0 forums, but it is probably more appropriate here: :o
I am trying to determine which current BREW platform or handset is the absolute fastest when it comes to graphics and animation. Basically I am trying to decide on a target platform for an upcoming title. It's an action game, so quick display updates and smooth, responsive controls are key to the overall gameplay.
Our initial "guess" was the LG-VX6000, but after doing a quick forum search on this platform it seems like perhaps that was a poor start.
So. . . what is the fastest BREW platform? In your experience, which handset provides the smoothest display updates and the highest framerates for your applications? Any help or advice you can offer will be very helpful and very much appreciated.
Thanks,
-GLDChad :)

The vx4400 is a Brew 4400 and thus outdated. It's not even sold anymore. For its time it used to be pretty swift.
The vx4500 and vx4600 seem to be VERY identical to the vx6000 from what I've been able to gather and seem to have some of the same problems and the same system architecture, which slow the handsets down.

The vx4400 is a Brew 4400 and thus outdated. It's not even sold anymore. For its time it used to be pretty swift.
The vx4500 and vx4600 seem to be VERY identical to the vx6000 from what I've been able to gather and seem to have some of the same problems and the same system architecture, which slow the handsets down.

Also, is there a reliable source of performance data on these phones? The VX-6000 is unfortunately the only platform I have available for actual testing at this time.

Also, is there a reliable source of performance data on these phones? The VX-6000 is unfortunately the only platform I have available for actual testing at this time.

Thanks for the replies Dragon. I'm interested in obtaining some more concrete information on the CDM-8900, the VX-7000 or the A790. Specifically I would like to be able to compare them effectively to the VX-6000 and VX-4xxx phones. It would be helpful to me before approaching management with recommendations on which platforms to get instead of the ones they have already gone ahead and paid for. :confused:
Are there any BREW benchmark websites similar to jbenchmark.com for J2ME? Or at least a easy-access database on the specs of these phones?

Thanks for the replies Dragon. I'm interested in obtaining some more concrete information on the CDM-8900, the VX-7000 or the A790. Specifically I would like to be able to compare them effectively to the VX-6000 and VX-4xxx phones. It would be helpful to me before approaching management with recommendations on which platforms to get instead of the ones they have already gone ahead and paid for. :confused:
Are there any BREW benchmark websites similar to jbenchmark.com for J2ME? Or at least a easy-access database on the specs of these phones?

CDM8900 fastest, one of the main reason is that it has MSM6100 chipset(ARM 9), which is 146Mhz, and many other enhancements.

CDM8900 fastest, one of the main reason is that it has MSM6100 chipset(ARM 9), which is 146Mhz, and many other enhancements.

ditto on the 7000, they've got accelerated 2D blit functions, whereas the LG600 seems to have exactly the opposite ;)
comparing the LG6000 to the 8900 or LG7000 isn't along the lines of, not even close. I can do textured 3D characters with animation on the the latter, and just about 2D sprites on the former at a much lower fps.
for device speeds, no ones made a combined test effort that i know of.
"so quick display updates and smooth, responsive controls are key to the overall gameplay.
"
everything the LG6000 isn't basically.

ditto on the 7000, they've got accelerated 2D blit functions, whereas the LG600 seems to have exactly the opposite ;)
comparing the LG6000 to the 8900 or LG7000 isn't along the lines of, not even close. I can do textured 3D characters with animation on the the latter, and just about 2D sprites on the former at a much lower fps.
for device speeds, no ones made a combined test effort that i know of.
"so quick display updates and smooth, responsive controls are key to the overall gameplay.
"
everything the LG6000 isn't basically.

Actually, Ruben, the CDM-8900 uses a MSM6050 chip and for that it is mesmerizingly fast. It shows what can be done when the manufacturer is not skimpy on architecture and system design and doesn't want to squeeze every buck out of the handset. It also seems to run at the full clockspeed, whereas many other handsets are significantly underclocked in order to preserve battery life and to be able to use cheaper memory, etc.

Actually, Ruben, the CDM-8900 uses a MSM6050 chip and for that it is mesmerizingly fast. It shows what can be done when the manufacturer is not skimpy on architecture and system design and doesn't want to squeeze every buck out of the handset. It also seems to run at the full clockspeed, whereas many other handsets are significantly underclocked in order to preserve battery life and to be able to use cheaper memory, etc.

So the concensus seems to be, for 2D display and relative speed;
LG VX-7000 will be the fastest when it is available.
Audiovox CDM-8900 is currently the fastest commercially available platform.
Am I reading these conclusions correctly? I believe we may be able to acquire a prototype VX-7000, and if not we already have an activated 8900 and can begin development.
Thanks everyone for the tips, by the way!

So the concensus seems to be, for 2D display and relative speed;
LG VX-7000 will be the fastest when it is available.
Audiovox CDM-8900 is currently the fastest commercially available platform.
Am I reading these conclusions correctly? I believe we may be able to acquire a prototype VX-7000, and if not we already have an activated 8900 and can begin development.
Thanks everyone for the tips, by the way!

I assume you're asking this because you don't have access to the extranet...
Here's a suggestion:
Go to the phonescoop.com Phone Finder.
Scroll down and select Required for "BREW" and "Camera".
In the search results, check out the specs for each -- look for the word "video". The ones that do video usually have the 6100 chipset, while the ones that don't usually have an ARM7.
You can also select Required for "BREW" and "Streaming Multimedia". Those have at least an ARM9 too.

I assume you're asking this because you don't have access to the extranet...
Here's a suggestion:
Go to the phonescoop.com Phone Finder.
Scroll down and select Required for "BREW" and "Camera".
In the search results, check out the specs for each -- look for the word "video". The ones that do video usually have the 6100 chipset, while the ones that don't usually have an ARM7.
You can also select Required for "BREW" and "Streaming Multimedia". Those have at least an ARM9 too.

FYI I have a simple little performance test I run on all handsets. Not anything official or scientically correct but it uses multiplies and dives in a short loop (CPU Test) and a sample drawing program. Here are the times in milliseconds:
CPU sample
8600 1120 1225
8900 540 700
SE47 825 800
LG4400 670 645
LG4500 705 875
LG6000 715 1170
LG7000 20 55
A530 845 820
A610 875 960
T720 570 1235
T730 570 1425
As usual when handsets get software upgrades the performance goes to shit. See the T730 vs T720. The sample app runs slower yet. The older handsets like the A530 and LG4400 run better in most cases than new handsets like the LG6000 and T720/T730.
When new hardware comes along we gain it back. The LG7000 is 35 times faster than the LG600 even though the drawing performance does not show the same improvement.

FYI I have a simple little performance test I run on all handsets. Not anything official or scientically correct but it uses multiplies and dives in a short loop (CPU Test) and a sample drawing program. Here are the times in milliseconds:
CPU sample
8600 1120 1225
8900 540 700
SE47 825 800
LG4400 670 645
LG4500 705 875
LG6000 715 1170
LG7000 20 55
A530 845 820
A610 875 960
T720 570 1235
T730 570 1425
As usual when handsets get software upgrades the performance goes to shit. See the T730 vs T720. The sample app runs slower yet. The older handsets like the A530 and LG4400 run better in most cases than new handsets like the LG6000 and T720/T730.
When new hardware comes along we gain it back. The LG7000 is 35 times faster than the LG600 even though the drawing performance does not show the same improvement.

Something's really strange with your results, I'm afraid to say. If I'm reading this correctly, the numbers you print there are times, not iterations, correct?
If that's the case it would suggest that the vx4400 is actually faster when it comes to drawing than the CDM-8900, which is definitely no the case. The vx4400 is a decent handset but the 8900 is at least twice as fast. Same goes with many of the other handsets in relation to each other.
Of course it depends on what kind of drawing routines you use to do the test.
I've been thinking about writing a general benchmark myself for some time, including things like memory fill rate, cached instruction execution, uncached instruction execution and many other things. Who knows, maybe I'll have the time to actually write it some time.

Something's really strange with your results, I'm afraid to say. If I'm reading this correctly, the numbers you print there are times, not iterations, correct?
If that's the case it would suggest that the vx4400 is actually faster when it comes to drawing than the CDM-8900, which is definitely no the case. The vx4400 is a decent handset but the 8900 is at least twice as fast. Same goes with many of the other handsets in relation to each other.
Of course it depends on what kind of drawing routines you use to do the test.
I've been thinking about writing a general benchmark myself for some time, including things like memory fill rate, cached instruction execution, uncached instruction execution and many other things. Who knows, maybe I'll have the time to actually write it some time.

Yes these are times and not interations (although my next test will be iterations).
I am sorry but those are the results I get from using:
for (i = 0; i < 10; i++)
{
for (j = 0; j < 25; j++)
{
qrc.x = i;
qrc.y = j;
qrc.dx = 10;
qrc.dy = 10;
IDISPLAY_DrawRect(pApp->a.m_pIDisplay, &qrc, MAKE_RGB(0xff, 0x00, 0x00), MAKE_RGB(0xff, 0x00, 0x00), IDF_RECT_FILL);
IDISPLAY_BitBlt(pApp->a.m_pIDisplay,
i, 0, 4*(j+1), 4*(j+1),
pApp->pRawImagePtrs[IMG_TEST],
0, 0, AEE_RO_COPY);
}
IDISPLAY_UpdateEx(pApp->a.m_pIDisplay, FALSE);
}
time = ISHELL_GetUpTimeMS(pApp->a.m_pIShell);
sample = time - start;

Yes these are times and not interations (although my next test will be iterations).
I am sorry but those are the results I get from using:
for (i = 0; i < 10; i++)
{
for (j = 0; j < 25; j++)
{
qrc.x = i;
qrc.y = j;
qrc.dx = 10;
qrc.dy = 10;
IDISPLAY_DrawRect(pApp->a.m_pIDisplay, &qrc, MAKE_RGB(0xff, 0x00, 0x00), MAKE_RGB(0xff, 0x00, 0x00), IDF_RECT_FILL);
IDISPLAY_BitBlt(pApp->a.m_pIDisplay,
i, 0, 4*(j+1), 4*(j+1),
pApp->pRawImagePtrs[IMG_TEST],
0, 0, AEE_RO_COPY);
}
IDISPLAY_UpdateEx(pApp->a.m_pIDisplay, FALSE);
}
time = ISHELL_GetUpTimeMS(pApp->a.m_pIShell);
sample = time - start;

Interesting. It may be that the DrawRect is skewing the test a bit because it is not using nearly as much memory bandwidth as a blit and since it's a small rectangle that is probably written linearly to the framebuffer you don't have cache misses either, except the line skips.
I think I should really sit down and spend some time writing the benchmark I had in mind. I would really like to get a better feel for what each handset is capable of.

Interesting. It may be that the DrawRect is skewing the test a bit because it is not using nearly as much memory bandwidth as a blit and since it's a small rectangle that is probably written linearly to the framebuffer you don't have cache misses either, except the line skips.
I think I should really sit down and spend some time writing the benchmark I had in mind. I would really like to get a better feel for what each handset is capable of.

I am having some performance issues on the CDM8900. I have the same code running on a Vx7000, and it works beautifully and fast. When move to the CDM8900, I am getting incredibly slow performance on the BltIn function. I ensure that my source DIB is in the exact same pixel format as the display bitmap. My BltIn took 450ms. Just for giggles, I created an IDIB interface that was 8-bit palettized. It was significanly faster.
Is there anything strange about DIBs on the CD8900?

I am having some performance issues on the CDM8900. I have the same code running on a Vx7000, and it works beautifully and fast. When move to the CDM8900, I am getting incredibly slow performance on the BltIn function. I ensure that my source DIB is in the exact same pixel format as the display bitmap. My BltIn took 450ms. Just for giggles, I created an IDIB interface that was 8-bit palettized. It was significanly faster.
Is there anything strange about DIBs on the CD8900?