Ускорение симуляции

Улучшите эффективность обновления модели

Stateflow® использует Just-In-Time (JIT) режим компиляции, чтобы улучшить эффективность обновления модели для большинства графиков в Simulink® модели. Stateflow применяет JIT-режим к графикам, которые удовлетворяют требованиям. Для графика в режиме JIT Stateflow генерирует механизм выполнения в памяти для симуляции. Для этих графиков Stateflow не генерирует код С или файл MEX для симуляции графика. JIT-режим обеспечивает лучшую эффективность во время компиляции модели.

Некоторые графики не подходят для режима JIT, например, графиков с логгированием сигналов.

Модели Stateflow включают поддержку отладки для симуляции. Чтобы получить оптимальную эффективность, отключите отладку с помощью этой команды:

sfc('coder_options', 'forceDebugOff', 1);

Когда вы запускаете эту команду, диаграммы Stateflow не имеют поддержки отладки или проверки ошибок времени выполнения.

Примечание

Когда вы отключаете отладку, анимация также отключается.

Отключите опции цели симуляции, которые влияют на скорость выполнения

Чтобы симулировать модель быстрее, в диалоговом окне Параметры конфигурации модели (Model Configuration Parameters) на панели Simulation Target снимите флажки для этих параметров:

  • Echo expressions without semicolons - отключение выхода во время выполнения в MATLAB® Командное окно, например действия, которые не заканчиваются точкой с запятой, снимите этот флажок.

  • Ensure responsiveness - Чтобы отключить возможность выхода из длительного выполнения с помощью Ctrl + C, снимите этот флажок.

Нажмите OK.

Ускорение симуляции

Используйте эти советы для дальнейшего ускорения симуляции:

Держать графики закрытыми

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

Отключить предварительный просмотр содержимого

Во время симуляции модели любые открытые графики с включенным предпросмотром содержимого выполняются дольше. Если отключить предварительный просмотр содержимого, симуляция выполняется быстрее. Чтобы отключить предпросмотр содержимого, выберите график, на которой включен предпросмотр содержимого. На вкладке State Chart нажмите Content Preview.

Сохраните блоки Scope

Во время симуляции модели любые открытые блоки Scope постоянно обновляют свое отображение. Если вы сохраняете все блоки Scope закрытыми, можно ускорить симуляцию. После окончания симуляции можно открыть блоки Scope, чтобы просмотреть результаты.

Используйте Графики библиотеки в модели

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

Для получения дополнительной информации см. раздел «Создание специализированных библиотек графиков для крупномасштабного моделирования».

Похожие темы