Time - Get simulation time for code section - MATLAB (original) (raw)

Main Content

Get simulation time for code section

Syntax

Description

[SimTime](#btsssg%5F-SimTime) = [NthSectionProfile](#btsssg%5F-NthSectionProfile).Time returns a simulation time vector that corresponds to the execution time measurements for the code section.

example

Examples

collapse all

If you have a modelmyModel.slx that can run a SIL, PIL, or XCP-based external mode simulation, you can configure the model to generate a workspace variable that contains execution time measurements.

set_param('myModel', 'CodeExecutionProfiling', 'on'); set_param('myModel', 'CodeProfilingInstrumentation', 'detailed'); set_param('myModel', 'CodeProfilingSaveOptions', 'AllData');

When you run the commandsim('myModel'), the simulation generates the variableexecutionProfile (default). At the end of the simulation, get the profile for a code section. For example:

seventhSectionProfile = executionProfile.Sections(7);

Then, get the vector that represents simulation time for the code section.

simulationTimeVector = seventhSectionProfile.Time;

In this example, run a SIL model simulation where the model generates a workspace variable that contains execution time measurements.

openExample('ecoder/SILPILVerificationExample', ... supportingFile='SILTopModel.slx')

% Disable Simulink Code Coverage and third-party code coverage analysis set_param('SILTopModel',... 'CovEnable', 'off'); covSettings = get_param('SILTopModel', 'CodeCoverageSettings'); covSettings.CoverageTool = 'None'; set_param('SILTopModel', 'CodeCoverageSettings', covSettings);

% Configure code execution time profiling set_param('SILTopModel',... 'CodeExecutionProfiling', 'on'); set_param('SILTopModel',... 'CodeProfilingInstrumentation', 'detailed'); set_param('SILTopModel',... 'CodeProfilingSaveOptions', 'AllData'); simOut = sim('SILTopModel');

The simulation generates the variableexecutionProfile (default) in the object simOut.

At the end of the simulation, get the profile for the sixth code section.

sixthSectionProfile = simOut.executionProfile.Sections(6);

Get the vector that represents simulation time for the code section.

simulationTimeVector = sixthSectionProfile.Time;

Input Arguments

collapse all

Object generated by the coder.profile.ExecutionTime property Sections.

Output Arguments

collapse all

Simulation time, in seconds, for section of code. Returned as a vector.

Version History

Introduced in R2013a