主要内容

音频波束形成系统的多核仿真

此示例显示了Simulink®中的音频波束成形系统仿真模型如何使用DataFlow域具有改进的性能。金宝app它使用Simulink®中的Dataflow域自动将通信系统的金宝app数据驱动部分分区为多个线程,从而通过在桌面的多个内核上执行仿真来提高模拟的性能。

介绍

DataFlow执行域允许您在计算密集型系统的模拟中使用多个核心。此示例显示Dataflow如何作为子系统的执行域提高了模型的模拟性能。要了解有关DataFlow以及如何使用多个线程运行Simulink模型的更多信息,请参阅金宝app使用数据流域的多核执行

声波束形成

这个例子展示了使用麦克风的均匀线性阵列(ULA)的声波束形成。该模型模拟了10单元均匀间隔线性麦克风阵列上来自不同方向的3个音频信号的接收。在接收端加入热噪声后,对不同的声源角度进行波束形成,并在声音设备上播放结果。需要在音频播放器中播放的音频源可以使用Select source块中的对话框来选择。

设置数据流子系统

此示例使用Simulink中的DataFlow域以在桌面上使用多个核心来提金宝app高模拟性能。该模型中数据流子系统的域参数设置为数据流。您可以通过选择子系统然后选择来查看此内容视图>属性检查器。DataFlow域将自动分区模型并使用多个线程模拟系统以进行更好的仿真性能。将域参数设置为DataFlow后,您可以使用DataFlow Simulation Assistant分析模型以获得更好的性能。您可以通过单击打开数据流模拟助手数据流的助理按钮下方自动框架尺寸计算参数。

数据流子系统并发性分析

数据流仿真助手建议更改模型设置以获得最佳仿真性能。接受建议的模型设置,在建议模拟性能的模型设置,点击接受所有。或者,您可以展开该部分以单独更改设置。在本例中,模型设置已经是最优的。在“数据流模拟助手”中,单击分析按钮,开始分析数据流领域的仿真性能。分析完成后,数据流仿真助手将显示数据流子系统在仿真期间将使用的线程数。

在分析了模型之后,助手显示了三个线程。这是因为三个波束形成器块是计算密集型的,可以并行运行。然而,三个波束形成器块,依赖于麦克风阵列和接收器块。管道延迟可用于打破这种依赖关系并增加并发性。数据流模拟助手将推荐的管道延迟数显示为建议延迟。计算建议的延迟值以获得最佳性能。

下图显示了数据流仿真助手,其中数据流子系统当前指定的延迟值为零,而系统的建议延迟值为1。单击接受旁边的按钮建议延迟在数据流仿真助手中使用建议的数据流子系统延迟。延迟值也可以直接在属性检查器的“延迟”参数中输入。金宝appSimulink显示延迟参数值使用美元Z ^ {n} $标记在数据流子系统的输出端口。

多核性能仿真

通过比较运行模型与且不使用DataFlow的运行模型所花费的执行时间来衡量使用DataFlow域的性能改进。执行时间使用SIM命令测量,返回模型的模拟执行时间。这些数字和分析在Windows桌面计算机上发布了Intel®Xeon®CPUW-2133 @ 3.6 GHz 6核心处理器。

多线程模型的仿真执行时间= 2.74s单线程模型的仿真执行时间= 5.66s

概括

本示例展示了在桌面上使用多核的单基地雷达系统仿真模型中,使用数据流域的多线程如何提高性能。