Table Of Contents

Benchmarking in Real-Time Applications

Last Modified: April 9, 2020

Benchmarking is the act of measuring how long specific sections of code take to execute, often over extended periods of time, in order to evaluate the performance and determinism of the measured code. Benchmarking your code helps to ensure that your real-time application meets your timing requirements consistently over an extended execution period.

Benchmarking typically involves carefully controlling the sequence in which the code executes and using timing nodes before, during, and after code execution to gather execution time metrics. You can process those metrics to determine average execution rates, standard deviation, maximum jitter, and many other calculations.

You can use the Benchmarking Template for Real-Time Code example as a starting point for benchmarking code that you intend to run in a Timed Loop. This benchmarking template provides accurate average-case and worst-case jitter execution time over thousands of iterations.

You can also use the RT Execution Trace Tool nodes to log trace sessions, or sets of timing and event data from VIs and operating system threads. You can view and analyze trace session data using the Real-Time Trace Viewer application. You can find the Real-Time Trace Viewer by searching from the Start menu of the host computer.

Recently Viewed Topics