After flashing a real time patched linux kernel in our iMX8QM module, we tested the real time performance of the kernels by applying the instructions given in this link:
However the results we got seem not fully satisfying as a real time kernel. The latency still relatively high with high priority threads. I applied the recommendations given here Real-Time Linux | Toradex Developer Center to optimize the real time performance, but this had no noticable effect.
This is how the latency histogram of iMX8 looked like, (where CPU 4 and 5 represent the Cortex-A72 cores).
[upload|/pA1N7b71HMSpTPv5582N8WrWIk=]
By looking at some examples provided by the www.osadl.org , we can see a much better performance:
ARMv7 Processor rev 0 (v7l), Linux 3.12.24-rt38
[upload|/BAX3ZmaFSTO4xHR73G0W0YM5Mo=]
DVFS requires relatively huge delays for the regulators to reach a new operating point voltage and for the clocking system to get to the new frequency. During these delays no process will be scheduled contributing to latency.
I expect the worst case latency to be better if you disable automated DVFS depending on current CPU load, even if you fix the CPU frequency to the lowest operating point.
E.g. what happens if you pin both the A53 and A72 CPU complex to the lowest 600MHz: