3.2.2. Use frame time instead of FPS for measurements

Frames per second is a simple and basic measurement of performance, but frame time is a better measure of optimization effectiveness.

The reason frame time is a better measurement is that frame time is a linear measure whereas frames per second is non-linear. Linear measurements also make calculations easier.

Figure 3.2 shows frames per second plotted against frame time. This graph illustrates the non-linear nature of FPS measurements.

Figure 3.2. Frame time and FPS

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.

If you know the individual time changes corresponding to different optimizations, you can add the times together to get the total improvement.

If you are using FPS as a measurement, you cannot add them together because their non-linear nature. Any attempt to add them gives an incorrect total.

Table 3.1 shows a series of comparisons between different FPS measurements A and B.

The FPS changes by a different amount for every measurement, but the frame time changes by the same amount every time. For example, going from 100 FPS to 200 FPS involves a difference of 100 FPS or 5ms. However going from 20 FPS to 22.2 FPS is a difference of 2.2 FPS but this is also 5ms. The linear nature of frame time is easier to work with when you are measuring the impact of optimizations.

Table 3.1. Difference between frames per second and frame time

Frame time AFPS AFrame time BFPS AFPS differenceFrame time difference

Copyright © 2011 ARM. All rights reserved.ARM DUI 0555A