Диагностируйте перегруженный центральный процессор от выполнения приложения реального времени

Некоторая проблема производит перегрузку ЦП при выполнении приложения реального времени.

Что означает эта проблема

Перегрузка ЦП указывает, что центральный процессор не может завершить обработку временного шага модели прежде, чем перезапустить для следующего временного шага. Когда эта ошибка происходит, свойство CPUoverload целевого объекта изменения от none к detected. Одно из следующего может произойти:

  • Ядро Simulink® Real-Time™ останавливает выполнение модели.

  • Если вы позволяете перегрузку, выполнение модели продолжается, пока предопределенное событие не имеет место (см. перегрузки ЦП Разрешения для Диагноза). Если модель продолжает выполняться после перегрузки ЦП, временной шаг длится целому время, требуемое закончить выполнение. Это поведение задерживает следующий временной шаг.

Для получения дополнительной информации и тестовые модели, смотрите www.mathworks.com/matlabcentral/fileexchange/23507.

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

  • Целевой компьютер является слишком медленным, или шаг расчета модели слишком мал (см. Пределы на Шаге расчета).

  • Модель является слишком комплексной (алгоритмическая сложность).

  • Модель делает дисковый ввод-вывод на жестком диске целевого компьютера.

  • Задержка ввода-вывода, где каждый используемый канал ввода-вывода вводит задержку в систему. Задержка ввода-вывода может заставить время выполнения превышать временной шаг модели.

    Чтобы найти значения задержки для плат Speedgoat, свяжитесь с технической поддержкой Speedgoat.

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

Ядро Simulink Real-Time обычно останавливает выполнение модели, когда это сталкивается с перегрузкой ЦП. Можно сконфигурировать модель Simulink Real-Time, чтобы позволить перегрузки ЦП. Используйте эту возможность поддержать долгие инициализации и для диагноза перегрузки.

Разрешите долгое время инициализации

Для некоторых приложений реального времени нормальная инициализация может расширить вне первого шага расчета. Используйте TLCOptions свойство xPCStartupFlag с самым маленьким действующим значением, приблизительно до 5.

Разрешите перегрузки ЦП для диагноза

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

Примечание

Разрешение центрального процессора целевого компьютера перегрузиться может вызвать неправильные результаты, специально для многоскоростных моделей. Используйте эти параметры командной строки TLC только в диагнозе. Когда ваш диагноз будет завершен, выключите эти опции.

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

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте