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

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

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

Чтобы далее совершенствовать анализ производительности, одна из этих двух задач оснащена, чтобы получить информацию о блочном уровне. Добавленные блоки Метки времени получают метки времени сигналов ввода и вывода блоков, которые должны быть исследованы. Путем вычитания меток времени для сигналов ввода и вывода получены времена выполнения блоков.

Примечание: Этот пример должен быть запущен в Режиме external mode и требует Simulink Coder™.

Откройте модель

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

Закройте открытые осциллографы

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

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

clear
close all
bdclose all

Смотрите также