User Tools

Site Tools


scratch

This is an old revision of the document!


Every program that is built using Orx contains a profiler tool. The Profiler is compiled-in when using either debug or release modes.

The tool helps you diagnose bottlenecks and monitor performance and internal resources.

To show the profiler in your game or application, add the following to your config:

[]

Although it makes more practical sense to toggle it on and off with a key stroke:

Config []

Code []

Run your application again, and press the [] key to bring up your Profiler.

Profiler Layout

1) Thread Frame bar

This grey bar indicates which thread is currently selected. Most of Orx's tasks run on the main thread. There are other threads that handle things like streaming audio, resource requests and bitmap decompressing which run on other threads. Select your thread with the Page Up and Page Down keys.

The first value displayed is the amount of time in ms that it took to render the entire current frame. The second value shows the largest amount of time that a frame took to render in the last second.

2) The meter bar panel These coloured meter bars indicate how much time each Marker took to complete within the frame. The colours themselves correspond to the colours on each Markers in the Marker panels.

The bars are spread over four or more lines. The row of the bar corresponds to the level of the system. For example, the render task is on the top level, so sits in the top row. The orxSpawner_Update is three levels into the hierarchy and is therefore on the third row.

3) Marker panel This panel shows all the Markers currently running in the frame. Markers represent important function calls. Each Marker contains three numbers.

The first is the amount of time in ms this Marker has taken to run in the current frame. The second number indicates the longest amount of time this Marker took to run in the last second.

The last number shows how many times this Marker was run in the frame.

You can even add your own custom markers.

4) Secondary Marker panel The subsystems in this panel do not have colouring. The grey lines indicate functions that were called - but not during the frame. So they will show having run 0x times.

The white lines indicate xxxx.

Using the profiler

You can pause or unpause the profiler at any time using the `Space Bar`.

Observe the running function call Markers. Currently there are no physics running in the engine.

scratch.1544621133.txt.gz ยท Last modified: 2021/02/02 01:24 (external edit)