exponenta event banner

Устранение неполадок неудовлетворительной производительности в реальном времени

Я хочу, чтобы некоторые рекомендуемые методы улучшили неудовлетворительную производительность приложений в реальном времени.

Что означает этот вопрос

Производительность выполнения и сокращение времени выполнения задачи (TET) модели зависят от конструкции модели, емкости целевого компьютера и коэффициента использования целевого компьютера.

Попробуйте этот обходной путь

Эти методы позволяют повысить производительность во время выполнения и сократить время выполнения задачи (TET) модели.

Запуск инструментов производительности

Используйте следующие инструменты для повышения производительности:

  • Для профилирования выполнения приложения в реальном времени используйте startProfiler команда.

  • Для запуска профилировщика и печати результатов используйте plot функция.

Дополнительные сведения см. в разделе Профилирование выполнения для приложений реального времени.

Использование многоядерного целевого компьютера

Можно повысить производительность во время выполнения, настроив модель таким образом, чтобы использовать преимущества многоядерного целевого компьютера:

  1. Разбейте модель на подсистемы в соответствии с физическими требованиями моделируемой системы. Установите частоту дискретизации блоков в каждой подсистеме на самую медленную скорость, соответствующую физическим требованиям системы.

  2. В диалоговом окне Параметры конфигурации (Configuration Parameters) на панели Решатель (Solver) установите флажок Рассматривать каждую дискретную скорость как отдельную задачу.

  3. Щелкните Настроить задачи, а затем установите флажок Включить явное разбиение модели для параллельного поведения.

  4. Создайте задачи и триггеры, а затем явно назначьте этим задачам разделы подсистем. См. раздел Разделение модели с помощью явного разбиения и многоядерного программирования с помощью Simulink.

  5. Запустите приложение в реальном времени.

Примечание

Не используйте системные блоки MATLAB на верхнем уровне моделей Simulink Real-Time, в которых выполнение задач явно разделено. Эти блоки генерируют ошибку TLC при построении приложения реального времени, например:

"Unable to find TLCBlockSID within the Block scope"

Свернуть модель

Вы можете повысить производительность выполнения, минимизировав модель, чтобы сделать более широкие циклы памяти и ЦП доступными для приложения реального времени:

  1. На панели решателя увеличьте размер фиксированного шага (время основной выборки). Выполнение с коротким временем выборки может перегрузить ЦП.

  2. Использовать режим опроса. См. Режимы выполнения.

  3. Уменьшите количество каналов ввода-вывода в модели.

Обратитесь в службу технической поддержки

Дополнительные инструкции см. в следующих источниках:

По вопросам оборудования Speedgoat обращайтесь в службу технической поддержки Speedgoat: www.speedgoat.com/support.

Связанные примеры

Подробнее

Внешние веб-сайты