В этом примере моделируется моностатическая радиолокационная система. Он использует домен потока данных в Simulink ®, чтобы автоматически разделить управляемые данными части радиолокационной системы на несколько потоков и тем самым повысить производительность моделирования, выполнив его на нескольких ядрах рабочего стола.
Область выполнения потока данных позволяет использовать несколько ядер при моделировании ресурсоемких систем. В этом примере показано, как поток данных как область выполнения подсистемы повышает производительность моделирования модели. Дополнительные сведения о потоке данных и о том, как запускать модели Simulink с использованием нескольких потоков, см. в разделе Многоядерное выполнение с использованием домена потока данных.
В этом примере моделируется простой сквозной моностатический радар. Прямоугольные импульсы усиливаются блоком передатчика, затем распространяются на цель и от нее в свободном пространстве. Шум и усиление затем прикладываются в блоке предварительного усилителя приемника к обратному сигналу, за которым следует согласованный фильтр. Потери диапазона компенсируются, и импульсы нескогерентно интегрируются.

В этом примере используется домен потока данных в Simulink для использования нескольких ядер на рабочем столе для повышения производительности моделирования. Параметр Domain подсистемы потока данных в этой модели имеет значение Dataflow. Для этого выберите подсистему, а затем выберите «Вид» > «Инспектор свойств». Домены потока данных автоматически секционируют модель и моделируют систему с использованием нескольких потоков для повышения производительности моделирования. Установив для параметра Domain значение Dataflow, можно использовать Data aflow Simulation Assistant для анализа модели с целью повышения производительности. Можно открыть ассистент моделирования потока данных, нажав кнопку «Ассистент потока данных» под параметром «Автоматический расчет размера кадра» в Инспекторе свойств.


Помощник по моделированию потока данных предлагает изменить параметры модели для обеспечения оптимальной производительности моделирования. Чтобы принять предложенные параметры модели, рядом с пунктом Предлагаемые параметры модели для производительности моделирования щелкните Принять все (Accept all). Можно также развернуть раздел, чтобы изменить настройки по отдельности. В этом примере настройки модели уже оптимальны. В ассистенте моделирования потока данных нажмите кнопку «Анализ», чтобы начать анализ области потока данных для обеспечения производительности моделирования. По завершении анализа ассистент моделирования потока данных показывает, сколько потоков подсистема потока данных будет использовать во время моделирования.

После анализа модели ассистент показывает один поток, поскольку зависимость данных между блоками в модели предотвращает одновременное выполнение блоков. Конвейерная обработка зависимых от данных блоков позволяет подсистеме потока данных увеличить параллелизм для более высокой пропускной способности. Ассистент моделирования потока данных показывает рекомендуемое количество задержек конвейера как предполагаемую задержку. Предлагаемое значение задержки вычисляется, чтобы обеспечить наилучшую производительность.
На следующей схеме показан ассистент моделирования потока данных, в котором подсистема потока данных в настоящее время задает нулевое значение задержки, а предложенная задержка для системы равна четырем.

Нажмите кнопку «Принять» рядом с пунктом «Рекомендуемая задержка» в ассистенте моделирования потока данных, чтобы использовать рекомендуемую задержку для подсистемы потока данных.
Dataflow Simulation Assistant теперь показывает количество потоков как четыре, что означает, что блоки внутри подсистемы потока данных моделируются параллельно с использованием четырех потоков. Использование четырех задержек трубопровода увеличило количество блоков, которые могут выполняться параллельно в подсистеме потока данных. Значение задержки также можно ввести непосредственно в инспекторе свойств для параметра «Задержка». Simulink показывает значение параметра задержки с помощью
тегов на выходных портах подсистемы потока данных.

Мы измеряем повышение производительности использования домена потока данных, сравнивая время выполнения, необходимое для запуска модели, с использованием потока данных и без него. Время выполнения измеряется с помощью команды sim, которая возвращает время выполнения моделирования модели. Эти цифры и результаты анализа были опубликованы на настольном компьютере под управлением ОС Windows с процессором Intel ® Xeon ® W-2133 @ 3,6 ГГц 6 ядрами 12 Threads.
Simulation execution time for multithreaded model = 41.33s Simulation execution time for single-threaded model = 34.82s Actual speedup with dataflow: 0.8x
В этом примере показано, как домен выполнения потока данных может повысить производительность моделирования радиолокационной системы с помощью нескольких ядер на рабочем столе.