При запуске выполнения SIL или PIL с включенным профилированием времени выполнения программное обеспечение генерирует сообщение на вкладке Test Output. Для примера:
Current plot held ### Starting SIL execution for 'kalman01' To terminate execution: clear kalman01_sil Execution profiling data is available for viewing. Open Simulation Data Inspector. Execution profiling report available after termination. Current plot released
Чтобы наблюдать потоковые времена выполнения во время выполнения, нажмите Simulation Data Inspector
ссылка.
Чтобы открыть отчет о профилировании выполнения кода:
Нажмите на Stop SIL Verification
ссылка.
Программа завершает процесс выполнения и отображает новую ссылку.
### Stopping SIL execution for 'kalman01'
Execution profiling report: report(getCoderExecutionProfile('kalman01'))
Щелкните новую ссылку.
В докладе представлены:
A сводных данных.
Информация о профилированных секциях кода, которая включает измерения времени для:
The entry_point_fn
_initialize
функция, для примера, kalman01_initialize
.
Функция точки входа, например kalman01
.
The entry_point_fn
_terminate
функция, для примера, kalman01_terminate
.
Определения для метрик.
По умолчанию в отчете отображается время в наносекундах (10-9 секунд). Можно задать модуль времени и численный формат отображения. Для примера отобразить время в микросекундах (10-6 секунд), используйте report
команда:
% Create workspace variable executionProfile=getCoderExecutionProfile('kalman01'); report(executionProfile, ... 'Units', 'Seconds', ... 'ScaleFactor', '1e-06', ... 'NumericFormat', '%0.3f')
Отчет отображает время в секундах только, если таймер калиброван, то есть устанавливается количество тактов в секунду. В Windows® machine, программное обеспечение определяет это значение для SIL симуляции. На Linux® машина, необходимо вручную калибровать таймер. Например, если скорость процессора составляет 1 ГГц, задайте количество тактов в секунду:
executionProfile.TimerTicksPerSecond = 1e9;
Чтобы просмотреть метрики во время выполнения для секции кода в Командном окне, в соответствующей строке щелкните значок.
Чтобы отобразить измеренные времена выполнения, щелкните значок Simulation Data Inspector. Можно использовать Данные моделирования Inspector для управления и сравнения графиков из различных исполнений.
Чтобы отобразить распределение во время выполнения, щелкните значок.
В этом примере, чтобы создать гистограмму, программное обеспечение использует следующие команды:
executionProfile=getCoderExecutionProfile('kalman01') section=executionProfile.Sections(2); data=section.ExecutionTimeInSeconds; histogram(data, 30,'Normalization','probability');
В следующей таблице перечислены сведения, представленные в профилях секции кода.
Столбец | Описание |
---|---|
Раздел | Имя функции, из которой генерируется код. |
Максимальное время выполнения | Самое длительное время между началом и концом секции кода. |
Среднее время выполнения | Среднее время между началом и концом секции кода. |
Максимальное собственное время | Максимальное время выполнения, исключая время в дочерних разделах. |
Среднее собственное время | Среднее время выполнения, исключая время в дочерних разделах. |
Вызовы | Количество вызовов в секцию кода. |
Значок, который вы кликнете, чтобы отобразить профилированную секцию кода. | |
Значок, который вы нажимаете, чтобы отобразить измеренные времена выполнения с Данными моделирования Inspector. | |
Значок, который вы кликните, чтобы отобразить распределение во время выполнения для профилированной секции кода. |