单matlab simulink模型的并行计算

时间:2012-07-18 08:37:40

标签: matlab simulink

我有一个simulink模型,它使用来自6个网络摄像头的输入进行实时视频处理。为此,我使用6'来自视频设备'块。处理这些块的输出以产生(x,y)坐标形式的输出。所有6个网络摄像头输出一次并行处理。但是,如果我使用超过3个网络摄像头,matlab会挂起并停止模拟。我想使用Parallel Computing Toolbox将6个处理块划分为两个处理器内核。但无法在任何地方找到合适的指令,以便在多个处理器内核之间分配单个simulink模型。我正在使用Matlab R2011a。

好吧,我无法发布我的代码或我的模型,但我可以告诉你我的模型做了什么。它从6 usb摄像机获取输入,跟踪每个摄像机每帧中的移动物体,并以(x,y)坐标给出移动物体的位置。因此,我一次得到6(x,y)坐标作为输出。我的模型运行良好,直到我使用3个摄像头并生成3(x,y)输出。添加第四个摄像头会挂起matlab并停止模拟。

1 个答案:

答案 0 :(得分:1)

我担心你没有找到在多个内核之间传播Simulink模型的指令的原因是因为这些指令目前不存在(直到并包括R2012b)。 Parallel Computing Toolbox只允许您在不同的核心上同时进行多个单独的模拟(即调查参数变化的影响等)。

对于您的应用程序,您可能最好使用Matlab“正确”并在m函数和/或脚本中编写所有内容。这样,您就可以使用parfor等命令来利用多核处理器。