В этом примере показано, как реализовать параллелизм данных для системы в модели Simulink®. Модель состоит из входа, функциональный компонент, который применяется к каждому входу и конкатенированному выходу. Для получения дополнительной информации о параллелизме данных смотрите Типы Параллелизма.
Настройте эту модель для параллельного выполнения. Чтобы видеть завершенную модель, откройте ex_data_parallelism_top.
Преобразуйте области в этой модели к моделям, на которые ссылаются. Используйте ту же модель, на которую ссылаются, чтобы заменить каждый из функциональных компонентов тот процесс вход. Рисунок показывает демонстрационную настройку.
Откройте параметры конфигурации модели для модели верхнего уровня. Снимите флажок MAT-file logging.
На панели Solver, набор Type к Fixed-step
и нажмите Apply. Также гарантируйте, что Periodic sample time constraint установлен в Unconstrained
. Под Additional options выберите Allow tasks to execute concurrently on target и нажмите Configure Tasks.
В диалоговом окне Concurrent Execution, на правой панели, устанавливают флажок Enable explicit model partitioning for concurrent behavior. С явным разделением можно разделить модель вручную.
В панели выбора выберите CPU. Нажмите Add task четыре раза, чтобы добавить четыре новых задачи.
В панели выбора выберите Tasks and Mapping. На панели Map block to tasks:
Под Block: Input нажмите select task
и выберите Periodic: Task
.
Под Block: Function 1 выберите Periodic: Task1
.
Под Block: Function 2 выберите Periodic: Task2
.
Под Block: Function 3 выберите Periodic: Task3
.
Под Block: Output выберите Periodic: Task
.
Это сопоставляет ваши разделы с задачами, которые вы создали. Input и блоки модели Output находятся на одной задаче. Каждый функциональный компонент присвоен отдельная задача.
В панели выбора выберите Data transfer. В панели Data Transfer Options, установленной параметр Periodic signals на Ensure deterministic transfer (minimum delay)
. Нажмите Apply и закройте диалоговое окно Concurrent Execution.
Примените эти параметры конфигурации ко всем моделям, на которые ссылаются. Для получения дополнительной информации смотрите Долю Настройка для Многоуровневых моделей.
Обновите свою модель, чтобы видеть задачи, сопоставленные с отдельными блоками модели.