Категория Code Generation > Optimization включает параметры для улучшения скорости симуляции ваших моделей и улучшения эффективности сгенерированного кода. Моделируйте параметры конфигурации, чтобы улучшить сгенерированный код, требуйте Simulink® Coder™ или Embedded Coder®.
Параметр | Описание |
---|---|
Преобразуйте параметры числовых блоков в постоянные inlined значения в сгенерированном коде. | |
Задайте, как переиспользуемая подсистема передает выходы. | |
Укажите, генерировать ли код инициализации для входных портов корневого уровня и выходных портов, установленный на нуле. | |
Задайте, нужно ли сгенерировать код инициализации для внутренних рабочих структур, таких как состояния блока и выходы блоков, в нуле. | |
Уровень | Выберите уровень оптимизации, который необходимо применить к сгенерированному коду. |
Приоритет | Оптимизируйте сгенерированный код для повышения эффективности выполнения, уменьшения потребления оперативной памяти или баланса между ними. |
Задайте пользовательскую оптимизацию | Вместо применения уровня оптимизации выберите этот параметр, чтобы выбрать параметры оптимизации в Details разделе. |
Оптимизируйте код, сгенерированный для назначения векторов, путем замены | |
Укажите минимальный размер массива в байтах, для которого | |
Задайте, объявлены ли сигналы блоков локально или глобально. | |
Укажите, повторно ли программа Simulink Coder использует память сигналов. | |
Устранение лишних локальных переменных (складывание выражений) | Сверните расчеты блоков в единичные выражения. |
Повторно используйте глобальную память для выходов блоков. | |
Выполните обновления на месте для блоков назначения и назначения шины | При возможности повторно используйте входную и выходную переменные блоков Bus Assignment и Assignment. |
Повторно используйте буферы для блоков чтения и записи хранилища данных | Удалите временные буферы для блоков чтения и записи хранилища данных. При возможности используйте блок Data Store Memory непосредственно. |
Замените операции умножения в индексах массива при доступе к массивам в цикле. | |
Укажите, хранятся ли логические сигналы как однобитовые битовые поля или как тип логических данных. | |
Задайте тип битового поля при выборе параметра конфигурации Упакуйте логические данные в битовые поля. | |
Уменьшите потребление памяти путем повторного использования буферов для хранения данных разных размеров и размерностей. | |
Выберите глобальную переменную оптимизации. | |
Переупорядочьте операции блока в сгенерированном коде для улучшенного кода скорости выполнения. | |
Используйте битовые наборы для уменьшения объема памяти, необходимой для хранения переменных строения состояния. | |
Используйте битсеты для хранения логических данных | Используйте битсеты, чтобы уменьшить объем памяти, необходимой для хранения логических данных. |
Задайте максимальный размер стека в байтах для вашей модели. | |
Задайте минимальную ширину сигнала или параметра, для которой a | |
Оптимизируйте с использованием заданных минимального и максимального значений | Оптимизируйте сгенерированный код, используя заданные минимальное и максимальное значения для сигналов и параметров в модели. |
Maximum number of arguments for subsystem outputs | Установите максимальное количество выходов подсистемы для индивидуального прохождения. |
Преобразуйте символьные имена инвариантных сигналов в постоянные значения. | |
Удалите код из числа с плавающей точкой в целое число с насыщением, которое преобразует NaN в нуль | Удалите код, который обрабатывает результаты преобразования с плавающей точкой в целое число для |
Используйте memset, чтобы инициализировать плавающие и двойные значения до 0,0 | Укажите, нужно ли генерировать код, который явно инициализирует данные с плавающей точкой до 0,0. |
Удалите код переноса, который обрабатывает результаты преобразования с плавающей точкой вне области допустимого значения в целое число. | |
Удалите перенос настраиваемых параметров. | |
Удалите код, который защищает от исключений из арифметики деления | Укажите, генерировать ли код, который защищает от деления на нули и |
Буфер для переиспользуемых подсистем | Улучшите повторное использование, вставив буферы на повторно используемых контурах подсистемы. |
Disable incompatible optimizations | Укажите, отключать ли оптимизацию, несовместимую с Simulink Code Inspector. |
Базовый тип склада для автоматически созданных перечислений | Установите тип и размер хранилища для перечислений, созданных с выход активного состояния. |
Используйте метки сигнала, чтобы направить повторное использование буфера | Для сигналов с той же меткой генератор кода пытается использовать ту же память сигнала. |
Сгенерируйте параллельные циклы for-loops | Укажите, должны ли петли for-loops в сгенерированном коде реализовываться параллельно для Matlab Function, Matlab System или For Each блока. |
Повторное использование памяти сигналов | Задайте повторное использование буферов памяти, выделенных для хранения входных и выходных сигналов блоков, тем самым уменьшая потребность в памяти программы в реальном времени |
Оператор для представления битовых и логических блоков оператора | Укажите, содержит ли сгенерированный код побитовые или логические операторы или то и другое одновременно. |