Main Content

Time

Get simulation time for code section

Description

example

SimTime = NthSectionProfile.Time returns a simulation time vector that corresponds to the execution time measurements for the code section.

Examples

collapse all

If you have a model myModel.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 command sim('myModel'), the simulation generates the variable executionProfile (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 variable executionProfile (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