@@ -36,4 +36,49 @@ https://e2e.ti.com/ or https://support.ti.com/
3636System Benchmarks
3737*****************
3838
39- |
39+ tress-ng and Cyclic Test
40+ ========================
41+
42+ .. _RT-linux-performance :
43+
44+ stress-ng (next-generation) will stress test a embedded platform in
45+ various selectable ways. It was designed to exercise various physical
46+ subsystems as well as the various operating system kernel interfaces.
47+ stress-ng can also measure test throughput rates; this can be useful to
48+ observe performance changes across different operating system or types
49+ of hardware.
50+
51+ Cyclictest is most commonly used for benchmarking RT systems. It is one
52+ of the most frequently used tools for evaluating the relative
53+ performance of real-time systems. Some performance tests which use
54+ Cyclictest are System benchmarking, Latency debugging with tracing and
55+ -approximating application performance.
56+
57+ Test commands used for running stress-ng and cyclictest together
58+
59+ .. code :: console
60+
61+ stress-ng --cpu-method=all -c 4 &
62+ cyclictest -m -Sp80 -D6h -h400 -i200 -M -q
63+
64+ The following summarizes the latencies observed using the yocto based
65+ default SDK image:
66+
67+ .. note ::
68+
69+ A known issue in this SDK release is affecting this benchmark.
70+ Using OP-TEE's PRNG drivers rather than the hardware accelerated TRNG
71+ drivers restores the context switch latencies to the values you see
72+ here.
73+
74+ More information on switching to the PRNG drivers can be found in the
75+ Foundational Components section, here :ref: `building-optee-with-prng `
76+
77+ .. csv-table ::
78+ :header: "Latencies","CPU 0","CPU 1"
79+
80+ "Minimum (usec)","4","4"
81+ "Average (usec)","7","6"
82+ "Maximum (usec)","68","72"
83+
84+ .. image :: img/rt-cpu-method-all-latency-histogram.png
0 commit comments