In-engine profiling
Posted: Wed Dec 22, 2010 7:20 pm
This isn't an irrlicht specific question, but it's relevant to game programming
I'm working on an in-engine profiling system for my own game engine, right now the only thing it does is keeping track of the framerate and keeping a limited list of frame draw times.
I'm planning on adding per-system profiling so I can keep track of performance of all engine aspects separately (like physics, sound, graphics, AI, etc.) and a system for keeping track of my engine's memory footprint and info on where the memory is being used (writing design documents for this as we speak)
The thing is that right now I have this nagging feeling that I'm missing some useful aspects which I could build into this profiler, so my question in general is 'What do you think could be useful in a profiling system?'
Of course, this has to be as non-intrusive as possible since I don't want to lose too many clock cycles on gathering profiling data (I'm an extreme optimization kind of guy)
So, any ideas?
I'm working on an in-engine profiling system for my own game engine, right now the only thing it does is keeping track of the framerate and keeping a limited list of frame draw times.
I'm planning on adding per-system profiling so I can keep track of performance of all engine aspects separately (like physics, sound, graphics, AI, etc.) and a system for keeping track of my engine's memory footprint and info on where the memory is being used (writing design documents for this as we speak)
The thing is that right now I have this nagging feeling that I'm missing some useful aspects which I could build into this profiler, so my question in general is 'What do you think could be useful in a profiling system?'
Of course, this has to be as non-intrusive as possible since I don't want to lose too many clock cycles on gathering profiling data (I'm an extreme optimization kind of guy)
So, any ideas?