向工作人员分发代码行

时间:2015-06-07 17:29:28

标签: matlab parallel-processing

说我有以下代码:

a = 5;
x = function1(a);
y = function2(a);

我想要做的是将function1的计算分配给一个worker,并将function2的计算分配给另一个worker,这样我就可以并行计算它们。每个函数都必须连续计算,所以我不能在语句周围使用spmd。还有其他可能性吗?

1 个答案:

答案 0 :(得分:1)

您可以使用parfeval,例如:

File.Move

您可以使用a = 5; xfut = parfeval(@function1, 1, a); % second arg is number of outputs from function1 yfut = parfeval(@function2, 1, a); fetchOutputs上的xfut方法获取函数的输出。您可以使用yfut方法等待一个或两个完成。