Long-running stability and performance

Blitz3D Forums/Blitz3D Programming/Long-running stability and performance

yinch(Posted 2004) [#1]
Hello Blitz3D programmers,

I need to know how stable Blitz3D is when running for a long time, days and weeks, continuously.

Does it leak memory as it runs? I really don't care if it only leaks memory when it exits, thats less of an issue.

The other thing is - does the framerate remain reasonably constant? Has anyone come across a Blitz3D app becoming choppy the longer you play it?

Any experience with slowdowns over long run times is greatly appreciated.

thanks

yinch'04


Sunteam Software(Posted 2004) [#2]
I remember seeing a similar topic about a year ago, and then I believe someone did a test that seemed to prove excellent stability over time. Try searching for it.

Thing is, every program written in Blitz will be different depending on the coding style of the individual so you should probably conduct your own tests with your own code to be absolutely sure.


Sledge(Posted 2004) [#3]
There was an issue some time ago with performance degrading - I remember discussing it with Halo; however there have been quite a few updates since then and it's never proven itself much of an issue (I'd quite forgotten about it, actually). If it had persisted I'm sure people would be bringing it up all the time, and they aren't. It's easy enough to test if you want to put your mind at ease, anyway.


John Blackledge(Posted 2004) [#4]
I've left my project running all day and overnight, with no apparent change in any of the response or memory conditions.
After using Blitz for nearly 3 years I'd forgotten what it was like to have such concerns (ahh, the good old days of other languages - not!)

Mind you, pehaps Windows has memory fragmentation problems, but that's a different matter.

Just make sure that you don't get caught out (as I have been) by not releasing resources; or every time you do something (e.g. enter a screen) you recreate them (using twice as much memory) using the same variable (so it's not apparent).


jhocking(Posted 2004) [#5]
As far as I've seen Blitz doesn't have any inherent memory leaks. BUT, it is really easy for you to accidentally write memory leaks into your code.


Zethrax(Posted 2004) [#6]
One thing to be aware of is that the Millisecs() command apparently flips over to negative and starts counting down to zero after about 24 days.


jfk EO-11110(Posted 2004) [#7]
Also some machines have some background tasks installed (like antivirus guards etc.) that require to let windows "breath" from time to time, so pausing the app every minute for a few millisecs will do the job. If you don't, it may result in an ugly BSOD on _some_ machines after some hours. Additionally you can fake windows and make it think that there is an user at the computer, this will prevent the os starting maintanance tasks ans screensavers and such, simply do a "MoveMouse MouseX(),MouseY()" every Minute or so. so Winwows thinks a User moved the Mouse (even then it wasn't moved, but repositioned).

Continously loading and freeing media probably will result in memory fragmentation, but it's the nature of these things.


yinch(Posted 2004) [#8]
wow!
Thanks everyone for all those replies...I wasn't expecting such a big response.

Thank you for the heads up on the windows-related issues and also the scene re-entry issue.

As advised I will run long-duration tests on the actual code I am using to see who actually happens.

yinch'04