Measuring the performance of your Kanzi application

There are several ways to measure the performance of your Kanzi application.

Viewing application performance in Kanzi Studio

To view the performance of your Kanzi application in Kanzi Studio, in the Preview enter the Debug mode and select:

Viewing the frame rate of your application

To view the frame rate of your Kanzi application:

In addition to the GPU specific profiling, you can also trigger function call profiling:

configuration->functionCallProfiling = KZ_TRUE;

When enabled, application prints every 100th frame the information from the function call tree and how much time (in milliseconds) specific functions took.

Viewing loading times of resources in your application

Loading times of resources show how much time the loading of resources and the scene graph in the .kzb used by your Kanzi application takes.

To view loading times of resources in your Kanzi application, enable the profiling in the application framework configuration with:

configuration->loadingTimeProfilingEnabled = KZ_TRUE;

Viewing overdraw of objects in your application

Overdraw visualization shows a lot of intensity in areas where fragments are unnecessarily rendered.

To view overdraw of objects in your Kanzi application:

Viewing animation and layout performance of your application

To view the animation and layout performance of your Kanzi your application:

Viewing layers in your application that are rendered into texture

Switching between framebuffer objects can cause significant performance reduction on some platforms. Conditions when Kanzi renders a layer into a texture can be complex. For example, rotation, scale, or opacity can cause render to texture to occur.

To view if a layer is rendered into a texture, and causing a framebuffer object (FBO) switch, in the Preview enter the Debug mode and select Layer render to texture visualization.
The Preview highlights the layers that are rendered into texture with transparent, orange stripes.

Viewing transparent layers in your application

In Kanzi Studio you can see which layers in your applications are transparent, and thus show the content behind them.

To view transparent layers in the Preview enter the Debug mode and select Layer is transparent visualization.
The Preview highlights the transparent areas with transparent, blue stripes.

Note that by default the value of Layer Background Brush Color property of viewport layers is transparent (0, 0, 0, 0), and that the Clear Color does not affect the transparency condition directly.

See also

Reducing shader switches

Preventing overdraw with sorting filters

Setting layers for efficient rendering

Rendering best practices

Animations best practices

Best practices

Reference for application configuration