Параметры конфигурации модели: оптимизация генерации кода

Code Generation> категория Optimization включает параметры для улучшения скорости симуляции ваших моделей и улучшания производительности сгенерированного кода. Параметры конфигурации модели, чтобы улучшить сгенерированный код требуют Simulink® Coder™ или Embedded Coder®.

ПараметрОписание

Поведение параметра по умолчанию

Преобразуйте числовые параметры блоков в постоянные встроенные значения в сгенерированном коде.

Передайте допускающую повторное использование подсистему выходные параметры как (Embedded Coder)

Задайте, как допускающая повторное использование подсистема передает выходные параметры.

Удалите корневую нулевую инициализацию ввода-вывода уровня (Embedded Coder)

Задайте, сгенерировать ли код инициализации для импорта корневого уровня и обнуленных выходных портов.

Удалите внутреннюю нулевую инициализацию данных (Embedded Coder)

Задайте, сгенерировать ли код инициализации для внутренних структур работы, таких как состояния блока и блокировать выходные параметры, чтобы обнулить.

Уровень (Embedded Coder)

Выберите уровень оптимизации, что вы хотите обратиться к сгенерированному коду.

Приоритет (Embedded Coder)

Оптимизируйте сгенерированный код для увеличенного КПД выполнения, уменьшил потребление RAM или баланс между двумя.

Задайте пользовательскую оптимизацию (Embedded Coder)

Вместо того, чтобы применить уровень оптимизации, выберите этот параметр, чтобы выбрать параметры оптимизации в разделе Details.

Используйте memcpy для векторного присвоения

Оптимизируйте код, сгенерированный для векторного присвоения, заменив for циклы с memcpy.

Порог Memcpy (байты)

Задайте минимальный размер массивов в байтах для который memcpy и memset вызовы функции должны заменить for циклы для векторных присвоений в сгенерированном коде.

Включите локальному блоку выходные параметры

Задайте, объявляются ли блоки-сигналы локально или глобально.

Повторное использование локальный блок выходные параметры

Задайте, сигнализируют ли повторные использования программного обеспечения Simulink Coder о памяти.

Устраните лишние локальные переменные (Сворачивание выражения)

Сверните расчеты блока в отдельные выражения.

Глобальная переменная повторного использования блокирует выходные параметры (Embedded Coder)

Глобальная память повторного использования для блока выходные параметры.

Выполните оперативные обновления для блоков Присвоения Присвоения и Шины (Embedded Coder)

Снова используйте переменные ввода и вывода блоков Присвоения и Присвоения Шины, если это возможно.

Повторное использование буферизует для блоков Записи Чтения и Хранилища данных Хранилища данных (Embedded Coder)

Демонтируйте временные буферы для блоков Записи Чтения и Хранилища данных Хранилища данных. Используйте Блок памяти Хранилища данных непосредственно, если это возможно.

Упростите индексацию массива (Embedded Coder)

Замена умножает операции в индексах массива при доступе к массивам в цикле.

Упакуйте булевы данные в битовые поля (Embedded Coder)

Задайте, хранятся ли булевы сигналы как однобитные битовые поля или как булев тип данных.

Оператор объявления битового поля вводит спецификатор (Embedded Coder)

Задайте тип битового поля при выборе булевых данных Пакета параметра конфигурации в битовые поля (Embedded Coder).

Буферы повторного использования различных размеров и размерностей (Embedded Coder)

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

Оптимизируйте доступ к глобальным данным (Embedded Coder)

Выберите оптимизацию глобальной переменной.

Оптимизируйте порядок блочной операции в сгенерированном коде (Embedded Coder)

Переупорядочьте блочные операции в сгенерированном коде для скорости выполнения улучшенного кода.

Используйте bitsets для хранения настройки состояния

Используйте bitsets, чтобы уменьшать объем памяти, требуемый сохранить переменные настройки состояния.

Используйте bitsets для того, чтобы хранить булевы данные

Используйте bitsets, чтобы уменьшать объем памяти, требуемый хранить булевы данные.

Максимальный размер стека (байты)

Задайте максимальный размер стека в байтах для вашей модели.

Порог развертывания цикла

Задайте минимальный сигнал или ширину параметра для который for цикл сгенерирован.

Оптимизируйте использование заданных минимальных и максимальных значений (Embedded Coder)

Оптимизируйте сгенерированный код с помощью заданных минимальных и максимальных значений для сигналов и параметров в модели.

Maximum number of arguments for subsystem outputs

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

Встройте инвариантные сигналы

Преобразуйте символьные имена инвариантных сигналов в постоянные значения.

Удалите код от с плавающей точкой до целочисленных преобразований с насыщением, которое сопоставляет NaN, чтобы обнулить

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

Используйте memset, чтобы инициализировать плавания, и удваивается до 0,0

Задайте, сгенерировать ли код, который явным образом инициализирует данные с плавающей точкой к 0,0.

Удалите код от с плавающей точкой до целочисленных преобразований, который переносит значения из области значений

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

Удалите код из выражений настраиваемого параметра, которые насыщают значения из области значений (Embedded Coder)

Удалите переносящийся код настраиваемых параметров.

Удалите код, который защищает от арифметических исключений деления (Embedded Coder)

Задайте, сгенерировать ли код, который принимает меры против деления на нуль и INT_MIN/-1 операции для целых чисел и данных фиксированной точки.

Буфер для допускающих повторное использование подсистемУлучшите повторное использование путем вставки буферов на допускающих повторное использование контурах подсистемы.

Disable incompatible optimizations

Задайте, запретить ли оптимизацию, которая несовместима с Simulink Code Inspector.

Основной тип хранения для автоматически созданных перечисленийУстановите тип хранения и размер для перечислений, созданных с активным выходом состояния.
Используйте метки сигнала, чтобы вести буферное повторное использование (Embedded Coder)Для сигналов с той же меткой генератор кода пытается использовать ту же память сигнала.
Сгенерируйте параллельные циклы for (Embedded Coder)Задайте, должны ли циклы for в сгенерированном коде быть реализацией параллельно для Matlab Function, Matlab System или блока For Each.
Повторное использование памятиЗадайте повторное использование буферов памяти, выделенных, чтобы сохранить сигналы ввода и вывода блока, таким образом, уменьшающие требования к памяти программы в реальном времени
Оператор, чтобы представлять блоки Побитового и Логического оператора (Embedded Coder)Задайте, содержит ли сгенерированный код побитовые или логические операторы или обоих.

Похожие темы