Используйте алгоритмы, оптимизированные для размещения массива с основной строкой

Описание

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

Category: математические и типы данных

Настройки

По умолчанию: Off

Когда Array layout (Simulink Coder) установлено в Row-majorгенератор кода использует алгоритмы, чтобы сохранить непротиворечивость числовых результатов между симуляцией и сгенерированным кодом. Иногда сгенерированный код для этих алгоритмов может быть неэффективным. Можно включить параметр конфигурации Use algorithms optimized for row-major array layout, чтобы включить эффективные алгоритмы, оптимизированные для определенных блоков. Параметр Use algorithms optimized for row-major array layout влияет на симуляцию и сгенерированный код.

Этот параметр влияет только на эти блоки:

  • Сумма элементов

  • Продукт элементов

  • Интерполяционная таблица n-D

  • Интерполяция с использованием Prelookup

  • Интерполяционная таблица (n-D)

Для этих блоков алгоритмы column-major и row-major могут отличаться в порядке выхода вычислений, что, возможно, приводит к немного другим числовым значениям.

На
  • Когда Array layout установлено на Row-major, этот параметр позволяет использовать эффективные алгоритмы, которые проходят через данные в основном порядке строк. Сгенерированный код эффективен.

  • Когда Array layout установлено на Column-major, этот параметр позволяет использовать алгоритмы, которые проходят через данные в основном порядке строк. Сгенерированный код неэффективен.

Прочь
  • Когда Array layout установлено на Row-majorгенератор кода использует алгоритмы, которые проходят через данные в основном порядке столбца. Сгенерированный код неэффективен.

  • Когда Array layout установлено на Column-majorгенератор кода использует алгоритмы, которые проходят через данные в основном порядке столбца. Сгенерированный код эффективен.

Совет

Когда Array layout установлено на Row-majorалгоритм основной строки работает с данными таблицами которые смежны в памяти. Данные этой таблицы приводят к более быстрому доступу к кэшу, что делает эти алгоритмы удобными для кэша.

В этой таблице обобщены отношения между размещением массива и удобными для кэша алгоритмами. Это лучшая практика, чтобы использовать алгоритм, который оптимизирован для заданного размещения массива, чтобы достичь хорошей эффективности. Например, выберите Use algorithms optimized for row-major array layout, когда для Array layout задано значение Row-major для генерации кода.

ArrayLayoutUseRowMajorAlgorithmПримененный алгоритм
Column-major'off'

Эффективный алгоритм основного столбца

Рекомендуется

Row-major'off'

Неэффективный алгоритм главного столбца

Не рекомендуется

Column-major'on'

Неэффективный алгоритм большой строки

Не рекомендуется

Row-major'on'

Эффективный алгоритм основной строки

Рекомендуется

Информация о командной строке

Параметр: UseRowMajorAlgorithm
Тип: Вектор символов
Значение: 'on' | 'off'
По умолчанию: 'off'

Рекомендуемые настройки

ПриложениеНастройка
ОтладкаНикакого влияния
ТрассируемостьНикакого влияния
ЭффективностьНикакого влияния
Меры безопасностиНикакого влияния

Похожие темы