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