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