【发布时间】:2018-01-25 16:44:57
【问题描述】:
我已经开始使用 ParallelDataTransfer.jl 库 (https://github.com/ChrisRackauckas/ParallelDataTransfer.jl),它基于 Julia: How to copy data to another processor in Julia 中给出的解决方案,我遇到了如下几个问题:
1- 如何使用自己的局部变量对工作人员执行计算?例如,让我们使用“sendto(2,x=pi)”在进程 2 上定义“x=pi”,现在如何在进程 2 上执行函数“sin(x)”并将结果放入变量“y”中也生活在进程 2 中? (注意当运行“@spawnat 2 y=sin(x)”时,变量“y”不会出现在进程2的范围内,可以通过运行“@spawnat 2 whos()”来访问)
2- 在第一个问题之后,是否有可能一个工作人员(比如 i)使用工作人员 j 自己的局部变量请求要在另一个工作人员(比如 j)上执行的函数,然后在工作人员 i 上获取结果?比如上面的例子,进程 3 如何请求进程 2 计算 x 位于进程 2 中的 sin(x) ,然后将结果发送到进程 3 中的变量 z ?
【问题讨论】:
标签: parallel-processing julia distributed-computing