主要内容

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

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

介绍

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

声学波束形成

该示例显示了使用麦克风的均匀线性阵列(ULA)的声学波束成形。该模型模拟了在10元件上的不同方向上的三个音频信号的接收,均匀间隔的线性麦克风阵列。在接收器处添加热噪声之后,对不同的源角施加波束成形,并且在声音装置上播放结果。可以使用从选择源块中的对话框中选择需要在音频播放器中播放的音频源。

设置DataFlow子系统

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

分析DataFlow子系统的并发性

DataFlow Simulation Assistant建议更改模型设置以获得最佳仿真性能。接受所提出的模型设置,旁边建议模拟性能的模型设置, 点击全都接受。或者,您可以展开该部分以单独更改设置。在此示例中,模型设置已经是最佳的。在DataFlow Simulation Assistant中,单击分析按钮开始分析DataFlow域进行仿真性能。分析完成后,DataFlow Simulation Assistant显示数据流子系统将在模拟期间使用的线程数量。

在分析模型后,助手显示三个线程。这是因为三个波束形成器块是计算密集的,并且可以并行运行。然而,三个波束形成器块取决于麦克风阵列和接收器块。管道延迟可用于打破这种依赖性并提高并发性。DataFlow Simulation Assistant显示建议的管道延迟数量延迟。建议的延迟值计算为提供最佳性能。

下图显示了DataFlow Simulation助手,其中DataFlow子系统当前指定零期零点值,并且系统的建议延迟是一个。点击接受按钮旁边建议延迟在DataFlow Simulation Assistant中使用DataFlow子系统的推荐延迟。也可以直接在“延迟”参数中的属性检查器中输入延迟值。金宝appSimulink显示延迟参数值$ z ^ { -  n} $在DataFlow子系统的输出端口处标记。

多核模拟性能

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

多线程模型的仿真执行时间= 4.03S单线程模型的仿真执行时间= 6.26S与数据流量的实际加速:1.6x

概括

此示例显示了使用DataFlow域的多线程如何使用桌面上的多个核心在单声雷达系统仿真模型中提高性能。