I noticed the Meshviewer example takes a big framerate hit when the toolbox is open. I go from 2000'ish frames to 800'ish. I was creating a custom window with some static text boxes on it and noticed my frame rate dropped from 3000'ish to 200'ish. It only has the window and 2 static text boxes!
Anyone have any idea why adding GUI elements creates such a performance hit?
I want to create some graphs on screen for doing visualization. Is make a graph gui component not the way to go?
Regards,
Dr. A>
Using GUI Causes Performance Hit?
wow you get 3000 fps? didn't know that was possible.
there is no performence hit you can make a thousand textbox filled windows with only a slight loss in FPS... I made a GUI editor and it still runs at 90 FPS or so.. it makes the poop! with selction box highlighting and junk.. for real! take a look it's like sooo sweet. hehe
more like you are getting FPS spikes so much as performence hits..unless your video card is eating itself or something.
try a bong hit that might help. or maybe thats the problem to begin with?
there is no performence hit you can make a thousand textbox filled windows with only a slight loss in FPS... I made a GUI editor and it still runs at 90 FPS or so.. it makes the poop! with selction box highlighting and junk.. for real! take a look it's like sooo sweet. hehe
more like you are getting FPS spikes so much as performence hits..unless your video card is eating itself or something.
try a bong hit that might help. or maybe thats the problem to begin with?
-
- Posts: 34
- Joined: Thu Aug 04, 2005 9:37 pm
no vsync not that i know of.. I'm using the sleep command but havent even looked to see if it effected the app yet.
I lose about 10 fps every 5 Gui elements or more depending what it is.
3000 is a spike..that or you have one kick ass video card.
the engine should run around 400 FPS with nothing rendered except the background color of course thats all dependent upton your video card specs.
I'm telling you there is NO hit if you're getting 3000 FPS that is miscalculated or something.. that or your window with textbox contains a pointer to the FPS attribute or something like that.
put more GUI in and tell me you see the same results... your dream of getting 3000 fps or even close with even a tutorial type application is well a pipe dream.
I lose about 10 fps every 5 Gui elements or more depending what it is.
3000 is a spike..that or you have one kick ass video card.
the engine should run around 400 FPS with nothing rendered except the background color of course thats all dependent upton your video card specs.
I'm telling you there is NO hit if you're getting 3000 FPS that is miscalculated or something.. that or your window with textbox contains a pointer to the FPS attribute or something like that.
put more GUI in and tell me you see the same results... your dream of getting 3000 fps or even close with even a tutorial type application is well a pipe dream.
I just checked the FPS on Guice with the fully rendered 3d background.
sadly it's about 64 fps to start... it took 400+ buttons or textboxes before it even dropped and even then it still had 20-40 fps.
400+ GUI elements = 40 FPS.
I've never seen it go up to 3000 I've never even seen 500 even with my 128mb mx 440.. this test was done on a 64mb gforce ti 200
when does it jump to 3000? when you first start the app? all the time when no GUI rendered?? I'm starting to think you're making this up what is your cards specs?
sadly it's about 64 fps to start... it took 400+ buttons or textboxes before it even dropped and even then it still had 20-40 fps.
400+ GUI elements = 40 FPS.
I've never seen it go up to 3000 I've never even seen 500 even with my 128mb mx 440.. this test was done on a 64mb gforce ti 200
when does it jump to 3000? when you first start the app? all the time when no GUI rendered?? I'm starting to think you're making this up what is your cards specs?
-
- Posts: 34
- Joined: Thu Aug 04, 2005 9:37 pm
I get 3000'ish when using the MeshViewer example. When using example 04, I get around 250fps. It isn't spikes, it stays constant and changes as I would expect depending on what I have in view (more in view slightly lower frame rate, less in view, slightly higher)
So maybe there's something about the mesh viewer code thats slightly different than the other examples. I dunno.
Dr. A>
So maybe there's something about the mesh viewer code thats slightly different than the other examples. I dunno.
Dr. A>
"the engine should run around 400 FPS with nothing rendered except the background color of course thats all dependent upton your video card specs. "
With nothing rendered it is the CPU speed that limits it here (looping), not the vid card. And telling him any figure is pointless as it varies widly from system to system. I have 3 systems and with a blank window I get from 600-1900 fps on the various setups.
Once you start throwin rendering at it so the CPU is not the bottle neck THEN you can say the card is holding it back and really test performance.
To the original poster.. What you are seeing is perfectly normal. If you read up on DirectX (or any api) you will see that massive frame rate changes occur with small additions on an "empty canvas" and that is just how it works. It is when you are around the 100fps mark and you suddenly loose 50fps that you need to worry. Do not think you have REALLY lost that percentage as it is not real world figures.
Get a proper app up and running and then add some windows and see how much you loose (as midnight says - it should be linear-ish with additional windows) you should certainly NOT see the same kind of fps loss you do at massive frame rates.
Bear in mind when you think you are simply placing a gui window onto an empty app - there is a LOT MORE going on behind the scenes that only needs applying once to the app from then on, so you do not then loose another 1000fps the next time.
Benchmarking empty apps is pointless except to show you how fast your CPU and possibly Card>bus speeds are.
HTH
With nothing rendered it is the CPU speed that limits it here (looping), not the vid card. And telling him any figure is pointless as it varies widly from system to system. I have 3 systems and with a blank window I get from 600-1900 fps on the various setups.
Once you start throwin rendering at it so the CPU is not the bottle neck THEN you can say the card is holding it back and really test performance.
To the original poster.. What you are seeing is perfectly normal. If you read up on DirectX (or any api) you will see that massive frame rate changes occur with small additions on an "empty canvas" and that is just how it works. It is when you are around the 100fps mark and you suddenly loose 50fps that you need to worry. Do not think you have REALLY lost that percentage as it is not real world figures.
Get a proper app up and running and then add some windows and see how much you loose (as midnight says - it should be linear-ish with additional windows) you should certainly NOT see the same kind of fps loss you do at massive frame rates.
Bear in mind when you think you are simply placing a gui window onto an empty app - there is a LOT MORE going on behind the scenes that only needs applying once to the app from then on, so you do not then loose another 1000fps the next time.
Benchmarking empty apps is pointless except to show you how fast your CPU and possibly Card>bus speeds are.
HTH
"the engine should run around 400 FPS with nothing rendered except the background color of course thats all dependent upton your video card specs. "
With nothing rendered it is the CPU speed that limits it here (looping), not the vid card. And telling him any figure is pointless as it varies widly from system to system. I have 3 systems and with a blank window I get from 600-1900 fps on the various setups.
Once you start throwin rendering at it so the CPU is not the bottle neck THEN you can say the card is holding it back and really test performance.
To the original poster.. What you are seeing is perfectly normal. If you read up on DirectX (or any api) you will see that massive frame rate changes occur with small additions on an "empty canvas" and that is just how it works. It is when you are around the 100fps mark and you suddenly loose 50fps that you need to worry. Do not think you have REALLY lost that percentage as it is not real world figures.
Get a proper app up and running and then add some windows and see how much you loose (as midnight says - it should be linear-ish with additional windows) you should certainly NOT see the same kind of fps loss you do at massive frame rates.
Bear in mind when you think you are simply placing a gui window onto an empty app - there is a LOT MORE going on behind the scenes that only needs applying once to the app from then on, so you do not then loose another 1000fps the next time.
Benchmarking empty apps is pointless except to show you how fast your CPU and possibly Card>bus speeds are.
HTH
With nothing rendered it is the CPU speed that limits it here (looping), not the vid card. And telling him any figure is pointless as it varies widly from system to system. I have 3 systems and with a blank window I get from 600-1900 fps on the various setups.
Once you start throwin rendering at it so the CPU is not the bottle neck THEN you can say the card is holding it back and really test performance.
To the original poster.. What you are seeing is perfectly normal. If you read up on DirectX (or any api) you will see that massive frame rate changes occur with small additions on an "empty canvas" and that is just how it works. It is when you are around the 100fps mark and you suddenly loose 50fps that you need to worry. Do not think you have REALLY lost that percentage as it is not real world figures.
Get a proper app up and running and then add some windows and see how much you loose (as midnight says - it should be linear-ish with additional windows) you should certainly NOT see the same kind of fps loss you do at massive frame rates.
Bear in mind when you think you are simply placing a gui window onto an empty app - there is a LOT MORE going on behind the scenes that only needs applying once to the app from then on, so you do not then loose another 1000fps the next time.
Benchmarking empty apps is pointless except to show you how fast your CPU and possibly Card>bus speeds are.
HTH
I wouldn't worry about losing a substancaial amount of FPS if previously you were drawing nothing because results like this are very misleading:
From drawing nothing to drawing something, is an increase of positive infinity, but from drawing two objects from one, is only an increase of 100% you see?
And anyways 3000fps? that 0.0003secs spent per frame and 200fps is 0.005secs. These are still small enough values, as more elements you add will make less of a difference anyway.
From drawing nothing to drawing something, is an increase of positive infinity, but from drawing two objects from one, is only an increase of 100% you see?
And anyways 3000fps? that 0.0003secs spent per frame and 200fps is 0.005secs. These are still small enough values, as more elements you add will make less of a difference anyway.