Dhrystone benchmarking demo

Introduction

This example shows an application for benchmarking the FreeRTOS SMP kernel and single core FreeRTOS kernel using dhrystone benchmarking.

The application runs the the dhrystone benchmarking demo using the given number of threads and iterations and logs the results as the number of dhrystones run per second.

The application runs with thread number equal to 1, 2, 5 and 10, with iteration number 30000000.

Supported Combinations

Parameter

Value

CPU + OS

a53ss0-0 freertos

CPU + OS

a53ss0-0 freertos-smp

CPU + OS

mcu-r5fss0-0 freertos

Toolchain

arm.gnu.aarch64-none

Toolchain

ti-arm-clang

Boards

am62dx-evm

Example folder

examples/kernel/freertos/dhrystone_benchmark/

Steps to Run the Example

  • When using CCS projects to build, import the CCS project for the required combination and build it using the CCS project menu (see Using SDK with CCS Projects).

  • When using makefiles to build, note the required combination and build using make command (see Using SDK with Makefiles)

See Also

Driver Porting Layer (DPL)

Sample Output

Shown below is a sample output when the benchmark application is run,

a53 core:

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 1
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 7602697.5

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 2
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 7623452.5

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 5
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 7652666.5

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 10
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 7656853.0

All tests have passed!!

mcu-r5f core:

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 1
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 3123048.2

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 2
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 3110581.2

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 5
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 3110678.0

[DHRYSTONE BENCHMARKING] Iterations                       : 30000000
[DHRYSTONE BENCHMARKING] Threads                          : 10
[DHRYSTONE BENCHMARKING] Dhrystones per second            : 3110710.2

All tests have passed!!