Wiz Performance Not As Expected?


Optimus

Member
Joined
May 8, 2005
Messages
339
Age
44
Location
Greece
Website
optimus.untergrund.net
Ok, I am actually sattisfied with my WIZ because the latest emulators play nice. But the first thing I thought when I got it was, ok the GP2X at 200-270Mhz ran those emulators near fullspeed or halfspeed, with x2/x3/x4 (overclocked at 800Mhz) speed I will finally have them at least perfect 100% smooth.

But this wasn't the case. SNES emul has exactly the same speed WIZ/GP2X. MAME is a bit slower in WIZ even overclocked at 800Mhz (some sound slow downs, e.g. in street fighter or cadilacs vs dinosaurs), GBA is the same (good) speed. Amiga is the same speed. For all those you'd expect some improvement.

I am not bothered much because 1) I mostly bought it for developing, 2) They already play well.

I am just wondering about your experience with the performance of WIZ (concerning pure CPU rendered stuff)? Are those early emul ports just unoptimized ports? Or are there some strange bottlenecks in WIZ? (Is there a need for a mmuhack in WIZ too?) Will we see vast improvements in emulator speed in the near future? I hope so..

What are the exceptions that show WIZ can do better? One I found was Quake2. 3-5fps in GP2X, something like 15-30fps on WIZ. I hope it's the case for the emulators in the future too..
 
The memory subsystem of the Wiz is most likely the bottleneck. The Wiz has the same cache sizes and effectively the same RAM bandwidth as the GP2X (which is already fairly memory constrained). Your also forgetting that the GP2X has two 200mhz CPUs, although i don't think those emulators utilized it.

I'm surprised by the Quake 2 performance aswell, is that with software rendering or using the GPU?
 
yes, the wiz is memory bottlenecked. Since emus are ported from the gp2x to the wiz quite easily, it's not going to be unoptimised emulators (although the wiz does have some tricks up its sleaves, but they will not improve performance by much). The best you can do is leaverage the performance of the 3d system, hence the quake fps increase.
 
Well, seems like you're doing something wrong.

MAME is definately faster, though there are some timing problems with the actual MAME version and FW 1.1.0, so if you got this combinations, MAME runs slower than it should (Franxis is working on this).

GBA is also definately faster if you clock your WIZ to 650 - 700MHz.

Superfrog and Turrican II do run Fullspeed with sound at FS1 with 700 MHz, I have not been able to achieve this with 270 MHz on the gp2x...

Do it might not be as much faster as you'd expect (well, we did expect it, since the MMSP2+ had the same problems which is why we scrapped it for the Pandora and went for the OMAP3), but it IS faster than the gp2x.
 
Just a few quick facts:

-The Wiz is only available a few weeks.
-Most emulators are only quick ports.
-No port exept a GLQuake alpha from Pickle uses OpenGL. (Runs about 20 fps)
-Quake and Quake 2 use software render only. Both have roughly double the performance the GP2x has.
-All MAME games I tested are faster than on the GP2x. Some have the double framerate.
-Many games on FBA (for example DoDonpachi) run extremly well even underclocked.
-The GBA emu runs many games fullspeed with superior scaling.

Regards,
Stephan
 
Maybe it depends on the game with MAME. I tried yesterday play Street Fighter both on GP2X at 270Mhz and WIZ at 800Mhz. It seemed faster on the first and on the second some slow downs were noticable (My firmware is still 1.0. When I heared some emuls don't work with update firmwares, I said I will wait before upgrading mine). I even tried to change some setting in case there is something slowing it down but no results.

With SNES what stroke me was that the frame rate performance was EXACTLY the same. In F-zero 19-20fps in the play alone in the road, both in WIZ and GP2X. Exactly! Maybe some heavy memory bottleneck was already limiting it on GP2X, so even with more mhz it's exactly there 19-20 with no performance. If I tried to underclock the WIZ to 200 or around 250-270mhz to match exactly the speed of the old GP2X, what will be the performance? Hey, I just need to get back home and try this one!

Maybe there is a minor performance in GBA and Amiga and I am wrong. I need to try them again in the old GP2X and see.

Yes, Quake 2 was software rendered as far as I can tell by the texture mapping not seeming to be filtered by the hardware. And that's what I wanted to see in order to compare. Pure CPU software rendering performance.

Batterytest with the fire effect. 82fps on GP2X 200Mhz, 150fps on Wiz at 533Mhz, 200fps on Wiz at 800Mhz. Some good improvement, not the full I expected, but hey, fire effects = many pixel reads. Lol,. maybe I should find a good Windows toolchain and try some plasmas and other demoeffects to see the improvement :)
 
Just a few quick comments.

sbock said:
-The Wiz is only available a few weeks.
I think it's ~6-7 weeks already.

sbock said:
-Most emulators are only quick ports.
..of their "mature" GP2X versions. There are not many Wiz specific improvements to be done to improve their speed really.

sbock said:
-No port exept a GLQuake Alpha from Pickle uses OpenGL. (Runs about 20 fps)
3d hardware won't help making most emulators faster, except PSX maybe.

sbock said:
-Quake and Quake 2 use software render only. Both have roughly double the performance the GP2x has.
-All MAME games I tested are faster than on the GP2x. Some have the double framerate.
-Many games on FBA (for example DoDonpachi) run extremly well even underclocked.
-The GBA emu runs many games fullspeed with superior scaling.
True, but to me it still feels it could run some things faster. Maybe there is some bottleneck somewhere, like slow framebuffer access GP2X had and most people didn't know about when it came out.
 
Last edited by a moderator:
I think it's ~6-7 weeks already.

Ok, than the Wiz is short before EOL... ;)

3d hardware won't help making most emulators faster, except PSX maybe

I wrote port, not emulator.

True, but to me it still feels it could run some things faster. Maybe there is some bottleneck somewhere, like slow framebuffer access GP2X had and most people didn't know about when it came out.

What do you mean? You mean the GP2x applications I'm refering to are not optimised? Quake 1+2 have no MMU hack that's true but Woogal always stated that it won't improve anything. On the other side the GP2x ports use 11khz sound and not 22khz as the Wiz.
In fact I compared the quality/performance of the ports not the consoles. True. But I think that is important for the most users...


BTW. So all of you can run the GP2x with 270 MHz. Interesting... ;-)



Regards,
Stephan
 
sbock said:
True, but to me it still feels it could run some things faster. Maybe there is some bottleneck somewhere, like slow framebuffer access GP2X had and most people didn't know about when it came out.

What do you mean? You mean the GP2x applications I'm refering to are not optimised?
No, I was talking in general. To me it feels like Wiz could run some things faster, but something is slowing it down in certain cases.
 
Last edited by a moderator:
No, I was talking in general. To me it feels like Wiz could run some things faster, but something is slowing it down in certain cases.

Ah yes, I misread your statement. I agree. :)

One thing I forget: Gernot/KungPhoo wrote that WizSticks (GLBasic) is slow like hell on the GP2x and runs very well on the Wiz.

Regards,
Stephan
 
Optimus said:
With SNES what stroke me was that the frame rate performance was EXACTLY the same. In F-zero 19-20fps in the play alone in the road, both in WIZ and GP2X. Exactly! Maybe some heavy memory bottleneck was already limiting it on GP2X, so even with more mhz it's exactly there 19-20 with no performance. If I tried to underclock the WIZ to 200 or around 250-270mhz to match exactly the speed of the old GP2X, what will be the performance? Hey, I just need to get back home and try this one!
Try the new SNES hack from headoverhells. F-Zero runs at 34FPS in the demo.
 
Last edited by a moderator:
Optimus said:
Maybe it depends on the game with MAME. I tried yesterday play Street Fighter both on GP2X at 270Mhz and WIZ at 800Mhz. It seemed faster on the first and on the second some slow downs were noticable (My firmware is still 1.0. When I heared some emuls don't work with update firmwares, I said I will wait before upgrading mine). I even tried to change some setting in case there is something slowing it down but no results.

Did you copy your gp2x-MAME directory onto the SD Card and then put the WIZ executables in there?

If yes, that might be a problem. I did the same thing first and MAME was slow. That's because of the config files :)

To run MAME correctly on the WIZ, extract the MAMEWIZ archive and ONLY copy the roms over, NO old config files from the gp2x version!
 
Last edited:
notaz said:
No, I was talking in general. To me it feels like Wiz could run some things faster, but something is slowing it down in certain cases.

I wonder too.. the performance in Temper is very disappointing to me, sure it's fast enough but not as fast as it really should be. I expect Wiz to be superior to GP2X in every case at the very least at 400MHz and it doesn't appear to be this way at all to me.

I don't really get the memory performance. The write bandwidth is not bad - with write buffer and circumventing cache you can max out the full bandwidth of 533MB/sec, so no complaints on that. But the (non-cached) read bandwidth is awful, I think you'll spend 60-70 cycles just to load a word this way. On the other hand, a cache linefill barely costs more than that at something like 70-80, so it's a little worse than half the potential bandwidth. But a linefill + eviction costs about double that (around 150)! What happened to the great performance using the write buffer, which should let you write a cache line in 32 cycles? And this was a situation where the evictions and writes had good locality of reference.

Maybe I should see what the costs are when you cross memory rows. On GP2X the initial configuration was very poor, hence why the improved RAM timings helped things. Normally you will be bottlenecked by the column addressing and burst read/write, not the row changing time, so it would have to be pretty significant to affect things this much.

I know it's not Linux stealing a bunch of time in the background because my benchmarks check out per-cycle for simple loops. In Temper everything but sound is hitting the hardware directly except sound, and the performance w/o sound isn't better. Maybe writing to some register is causing huge stalls and I should try benchmarking it with no external I/O at all. But I'm at a loss.

'course, I'd need to fix my Wiz first.

One nice thing about later ARM CPUs is that they have performance monitoring counters that you can use to help better profile where cycles are going. I don't know, maybe this one has them and I just missed it, but I don't think so.
 
Last edited by a moderator:
EvilDragon said:
MAME is definately faster, though there are some timing problems with the actual MAME version and FW 1.1.0, so if you got this combinations, MAME runs slower than it should (Franxis is working on this).

I'm not able to release the fixed version yet...
After some modifications and additions the performance has decreased about 20%, probably something weird with the cache after adding new object files... :(

Update: After removing from the executable an unused object, the performance has decreased even more (about 40%). Oh my god! :(
 
Last edited by a moderator:
Ok, the reason my WIZ was slow in MAME is that I had enabled the option to fix the diagonal tearing. I probably have to live without it atm. But now, also compared to the GP2X with the same options, it is quite faster. My mistake.
 
Ok, about the SNES. It is the last version from headoverheals and I noticed something strange. Simple when I selected 700mhz it was really 200mhz. Like the numbers on the setup aren't what they say. Then I select 250mhz and it's slightly faster (from 19 to 22fps). Then I say I will try more but then something wrong happens and every thing I select goes down to 7fps, even the old ones that worked once. Also, I am always running the snes_fast.gpe executable not the other one. Now something strange happens and the mhz don't work. Aghh.. I might wait for a fix or something..

Also, is there a way to go back to the menu from this emulator? Nothing works and I have to reset every time I want to change something :p
 
On PocketSNES, you have to press Volume+ and Volume- together to exit.
I still find it funny that the volume buttons could be programmed to have other functions. :p
 
I'm also trying some Fenix applications / games on the Wiz, and compared
to the gp2x, they run a hell of a lot faster!
I was actually quite surprised, as this opens so much more possibilities
for Fenix games on the Wiz!
 
Quiest said:
I'm also trying some Fenix applications / games on the Wiz, and compared
to the gp2x, they run a hell of a lot faster!
I was actually quite surprised, as this opens so much more possibilities
for Fenix games on the Wiz!

Yeah, the speed improvement is really quite good!
 
Last edited by a moderator:
Back
Top