exponenta event banner

Измерение времени выполнения и профилирование блоков

В этом примере показано, как анализировать производительность выполнения модели в Simulink Desktop Real-Time™. Примером является многоскоростная многозадачная модель, которая выполняет трудоемкую операцию умножения матрицы и нахождения минимума в результирующем матричном произведении. Это делается для двух разных размеров матрицы при двух разных скоростях выборки.

Информация о производительности уровня задачи возвращается блоком времени выполнения. Первый выходной порт показывает общее время выполнения каждого шага базовой скорости всей модели. Второй выходной порт показывает время выполнения каждой задачи.

Для дальнейшего уточнения анализа производительности одна из двух задач предназначена для получения информации на уровне блоков. Добавленные блоки Timestamp захватывают временные метки входных и выходных сигналов блоков, которые должны быть исследованы. Вычитанием временных меток для входных и выходных сигналов получают время выполнения блоков.

Примечание.Этот пример должен выполняться во внешнем режиме и требует Coder™ Simulink.

Чтобы запустить выполнение в реальном времени во внешнем режиме, на вкладке Рабочий стол в реальном времени щелкните Выполнить в реальном времени. Модель создается, подключается к Simulink во внешнем режиме и запускается.

Открытие модели

open_system(fullfile(matlabroot,'toolbox','sldrt','sldrtexamples','sldrtex_profiling'));

Закрыть открытые области

close_system(find_system(gcs ,'BlockType', 'Scope'));

Очистить модель

clear
close all
bdclose all

См. также