Measure compile time and run time separately in Simulink

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

Réponses (4)

Andreas Goser
Andreas Goser le 10 Sep 2012
Modifié(e) : Andreas Goser le 10 Sep 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 le 10 Sep 2012
Modifié(e) : Kaustubha Govind le 10 Sep 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 commentaires

Hello Kaustubha,
I tried to open the Simulink Profiler but it says, it does not exist. Is there any other link for Simulink Profiler.
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
Thanks Kaustubha.

Connectez-vous pour commenter.

Horace
Horace le 10 Sep 2012

0 votes

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 le 10 Sep 2012

0 votes

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 commentaire

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.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink dans Centre d'aide et File Exchange

Produits

Tags

Question posée :

le 10 Sep 2012

Community Treasure Hunt

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

Start Hunting!

Translated by