Skip to content

Commit b50d26d

Browse files
committed
feat(AM62PX): Add PREEMPT_RT perf numbers
Add the AM62Px latency numbers for the SDK 12.0 release Signed-off-by: Bryan Brattlof <bb@ti.com>
1 parent 96ee77c commit b50d26d

2 files changed

Lines changed: 46 additions & 1 deletion

File tree

source/devices/AM62PX/linux/RT_Linux_Performance_Guide.rst

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,49 @@ https://e2e.ti.com/ or https://support.ti.com/
3636
System Benchmarks
3737
*****************
3838

39-
|
39+
Stress-ng and Cyclic Test
40+
41+
.. _RT-linux-performance:
42+
43+
stress-ng (next-generation) will stress test a embedded platform in various selectable ways.
44+
It was designed to exercise various physical subsystems as well as the various
45+
operating system kernel interfaces. stress-ng can also measure test throughput rates;
46+
this can be useful to observe performance changes across different operating system or types of hardware.
47+
48+
Cyclictest is most commonly used for benchmarking RT systems.
49+
It is one of the most frequently used tools for evaluating the relative performance of real-time systems.
50+
Some performance tests which use Cyclictest are System benchmarking, Latency debugging with tracing and
51+
approximating application performance.
52+
53+
Test commands used for running stress-ng and cyclictest together
54+
55+
.. code:: console
56+
57+
stress-ng --cpu-method=all -c 4 &
58+
cyclictest -m -Sp80 -D6h -h400 -i200 -M -q
59+
60+
The following summarizes the latencies observed using the yocto based
61+
default SDK image
62+
63+
.. note::
64+
65+
Using the OP-TEE TRNG driver can impact this benchmark's performance due to
66+
frequent context switching between Normal World (Linux) and Secure World (OP-TEE),
67+
that occurs when the kernel's hardware random number generator interface
68+
(hwrng) requests entropy from the secure TRNG to replenish the Linux entropy
69+
pool.
70+
71+
The Linux TRNG driver can mitigate these latency spikes. This involves
72+
enabling the Pseudo RNG driver in OP-TEE as documented in the Foundational
73+
Components section: :ref:`building-optee-with-prng`, and enabling the RNG
74+
node in the Linux kernel device tree. This way the HW TRNG is accessed from
75+
the kernel itself.
76+
77+
.. csv-table::
78+
:header: "Latencies","CPU 0","CPU 1","CPU 2","CPU 3"
79+
80+
"Minimum (usec)","4","4","4","4"
81+
"Average (usec)","5","5","5","5"
82+
"Maximum (usec)","39","42","44","47"
83+
84+
.. image:: img/rt-cpu-method-all-latency-histogram.png
70 Bytes
Loading

0 commit comments

Comments
 (0)