Initial testing shows slower performance

BlitzMax Forums/BlitzMax Programming/Initial testing shows slower performance

flying willy(Posted 2004) [#1]
Hi There,

Tested PC bmx vs PC Blitz3D and found rotated quads were significantly slower under Blitzmax.

Texture size was 512x512 and several were rotated on screen.

Questions:

* Is TNL enabled for vertex transformations under opengl?

* Why is it suspiciously slower given a pc like mine runs Doom3 at 85fps?

I believe the compiler is faster yet the graphics are being significantly slower. I am calling for a further investigation as to why this may be the case.

(I have a Radeon 9800 Pro)


Dreamora(Posted 2004) [#2]
hmm don't know, it tested raw image drawing capabilities and BMax was capable of more than Blitz3D was.

and rotated quads: did you use OpenGL. If so what type did you use? just created quads, display lists, buffers etc? ( first is by far the slowest )


flying willy(Posted 2004) [#3]
I just used the drawimage stuff in blitzmax as this is opengl accelerated apparently.


Dreamora(Posted 2004) [#4]
Did you set the right mode when loading so that smooth is not used? ( on the other hand, any realtime rotated 2D stuff in Blitz3D nearly froze the system so anything that runs realtime is already faster :) )


flying willy(Posted 2004) [#5]
Wake up: both use 3D hardware. Why are you saying it's faster? I'm talking about quads.

Blitzmax uses 3D hardware with drawimage - they are quads.


smilertoo(Posted 2004) [#6]
Could be cos you use an ATI, theyre known to be more intrested in directx.


Dreamora(Posted 2004) [#7]
skunk: what is your actual problem, WHAT DID YOU ACTUALLY TEST?

If you do 2D stuff in Blitz3D and rotate it, it will drop to 0 frames!!

if you use Sprites and create ( like I in my test ) 18000 per frame to draw a little 32x32 image onscreen they won't run at 30fps either

so no mather how you do it, BlitzMax IS worlds faster than Blitz3D in 2D or 2d like stuff

and if you were able to make it slower to did something extremely wrong!


system:
P-M ( Benias ) 1,5ghz with mobility radeon 9700 64mb


Kanati(Posted 2004) [#8]
Show your comparison code in {codebox} so we can verify or refute your claims skunk. It'll help determine what you are or are not seeing. Really. :)


flying willy(Posted 2004) [#9]
Thats cool.

However please realise that I am talking about 3d only hardware. Look in flameduck's benchmark code, or hitoro's rotating rockets code.

it's really suprising how only 700 slow down this machine to a crawl, where on Blitz3D you can have literally thousands of rotating sprites on this pc.


Kanati(Posted 2004) [#10]
I own nsprite pro for b3d... so I'll try to get something going with that in 2D in 3D... And then do the same thing with Max and see what shakes loose.


FlameDuck(Posted 2004) [#11]
I might point out that my example, despite the name, isn't a very accurate perfomance benchmark (as I was going for a more real-world test at the time). :o>


BlitzSupport(Posted 2004) [#12]
As for my example (hi-toro), bear in mind it's doing a hell of a lot of alpha blending as well as drawing the plain rocket images -- shadows are layering upon shadows, upon rockets, upon shadows, etc.


flying willy(Posted 2004) [#13]
No offence, but if I can get a few rockets to slow down where Doom3 doesn't, does that not indicate you might have a problem?


skn3(Posted 2004) [#14]
What are you system specs skunk ?


flying willy(Posted 2004) [#15]
Pretty cutting edge.


Amon_old(Posted 2004) [#16]
Hey Skunk,

Have you ever gone by the name DocWiz?


flying willy(Posted 2004) [#17]
No I haven't. Is there a point to your comment?


Dreamora(Posted 2004) [#18]
skunk: erm you compare a highend 3D engine that does not even run on low end systems with a lowend 2d engine that runs on any opengl compatible system?
Beside that Doom3 uses high optimised arb and ext stuff, things that are not used ( or even needed ) for a simple 2D thing.

And I'm sure that both "benchmarks" mentioned here could be highly optimised. They were all pre-first generation things where people are not that used to how opengl works ... most of them are used to the way directx works which is quite different to the state-stack driven way opengl works.

I'm sure we will see really fast and stunning stuff within the next 6-12 months :)


Michael Reitzenstein(Posted 2004) [#19]
Seriously, what are you smoking, Dreamora?

Skunk is comparing 2D in 3D in Blitz3D to BlitzMax's 2D. He's using the *built* *in* 2D commands in BlitzMax, in which, last time I checked, the end user doesn't touch any OpenGL commands at all.

If this is all too difficult for you to understand, stop trying to 'contribute' to this thread.


BlitzSupport(Posted 2004) [#20]

No offence, but if I can get a few rockets to slow down where Doom3 doesn't, does that not indicate you might have a problem?


No, and Doom 3 isn't relevant here -- it's all very well talking about "a few rockets", but the sheer amount of alpha-blending and overdraw involved, and the resulting fill-rate hit, is what slows it down. Doom 3 is optimised to do as little of this as possible -- it's not filling the screen with hundreds of large sprites. Any graphics card will choke on this.

Blitz can't do much to reduce the load if the programmer chooses (as I did) to draw a huge number of large sprites overlaying each other. To speed the example up, you'd have to try to manage visibility manually -- there are probably a lot of sprites that don't even get seen in that example, because they're totally obscured, yet being drawn anyway.


TommyBear(Posted 2004) [#21]
Ok Ok.. show us you specs, show us your code. Otherwise thread over.


flying willy(Posted 2004) [#22]
Tommy, can we have a little less attitude from you please? thank you :)


Mark Tiffany(Posted 2004) [#23]
Skunk, without posting some more details (i.e. code & specs as Tommy rather sensibly suggests), what is the point of this thread?


flying willy(Posted 2004) [#24]
I am getting there on the other threads. I want to isolate the performance issues in blitzmax rather than beat about the bush here.