Measure compile time and run time separately in Simulink

14 visualizaciones (últimos 30 días)
Horace
Horace el 10 de Sept. de 2012
Hi,
I would like to measure compile time and run time separately in Simulink. If I use tic; sim('model.mdl'); toc, then I get hte total time of compiling the model and running the model. But how can I get those times separately?
Thanks, Horace

Respuestas (4)

Andreas Goser
Andreas Goser el 10 de Sept. de 2012
Editada: Andreas Goser el 10 de Sept. de 2012
It is not fully clear to me what "compiler time" is in your context. There are multiple reasons why Simulink models need time before the simulation starts. You may look for something like the SLBUILD and RTWBUILD commands. You can measure this time and then the pure simulation time. You may also be interested in measuring the time for "update diagram". The command her would be
set_param('sys', 'SimulationCommand', 'update');

Kaustubha Govind
Kaustubha Govind el 10 de Sept. de 2012
Editada: Kaustubha Govind el 10 de Sept. de 2012
Try using the Simulink Profiler - I think the stage corresponding to ModelInitialize() is the compiler-phase and ModelExecute() is the run-time phase. Note that the Profiler adds instrumentation which introduces some overhead to your simulation, so the total execution time for your model will be slower that using tic-toc.
  3 comentarios
Kaustubha Govind
Kaustubha Govind el 17 de Sept. de 2012
Samir: Sorry, I think they revamped the documentation with the latest release, so the link has changed. Try http://www.mathworks.com/help/simulink/ug/capturing-performance-data.html
Samir
Samir el 19 de Sept. de 2012
Thanks Kaustubha.

Iniciar sesión para comentar.


Horace
Horace el 10 de Sept. de 2012
By compile time, I mean this:
When I click run on simulink, there is a green loading bar. Once the green loading bar is done, the bar turns blue and runs the simulation for the time specified. How do I measure the time used for hte green bar and the blue bar separately?
Thanks, Horace

Horace
Horace el 10 de Sept. de 2012
Thanks for the help Kaustubha.
It was exactly what I was looking for. But is there a way to do this without hte profiler? The reason I ask is because the Profiler really slows down the compilation and simulation.
  1 comentario
Kaustubha Govind
Kaustubha Govind el 10 de Sept. de 2012
Horace: Sorry, I don't know of a faster way to get this information. You could try Andreas suggestion of running "tic;set_param('model', 'SimulationCommand', 'update');toc" to get just the compilation time, and subtract it from "tic; sim('model'); toc" to get the execution time.

Iniciar sesión para comentar.

Categorías

Más información sobre Simulink en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by