Why are there spikes in the Simulink Real-Time TET log?

9 visualizaciones (últimos 30 días)
Why are there spikes in the Simulink Real-Time Task Execution Time (TET) log?

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 1 de Jun. de 2023
Editada: MathWorks Support Team el 1 de Jun. de 2023
Here is a list of factors known to cause spikes in the task execution time:
  1. BIOS Power save options are enabled
  2. BIOS Legacy USB controllers are enabled
  3. Using the Simulink Real-Time Graphical interface
  4. System Management Interrupts (SMI)
  5. Cache misses when loading states into memory at the beginning of model execution
  6. Cache misses when background tasks move lots of data
To eliminate the spikes in the Simulink Real-Time TET log, please do the following:
  1. Turn the Power save option in the BIOS off
  2. Turn USB Controllers off
  3. Use text mode rather than Simulink Real-Time Graphical interface
  4. To ensure best performance, confirm that the custom target computer BIOS settings match those specified in the Simulink Real-Time documentation. You can find the documentation page for this by executing the following command in the MATLAB command prompt:
    web(fullfile(docroot, 'xpc/gs/bios-settings.html'))
    Note that real-time target machines provided by Speedgoat (exclusively supported with Simulink Real-Time since R2018a) are already configured and optimized to minimize and eliminate these BIOS effects.
  1 comentario
Pablo Romero
Pablo Romero el 30 de Nov. de 2022
The suggestions above apply up to MATLAB R2020a. Please see my answer below for further instructions in R2020b onwards.

Iniciar sesión para comentar.

Más respuestas (1)

Pablo Romero
Pablo Romero el 30 de Nov. de 2022
From MATLAB R2020b onwards, you may enable polling mode as shown here to reduce the sample time jitter, which may show up as spikes in TET.

Etiquetas

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by