在Julia中的多个进程上重新加载源文件

时间:2016-02-29 02:19:46

标签: parallel-processing julia

我有一个带有模拟功能的Julia源文件,我想在多个处理器上并行运行。

addprocs(1)
using Autoreload
arequire("testp.jl")
testresults = pmap(testp,[100,100])    
* change code *    
areload()
testresults = pmap(testp,[100,100])

根据docsincludeusing不会将模块内容放在所有进程的范围内,因此我必须使用require并删除模块来自.jl文件的声明。我在Jupyter中进行测试,因此我经常在编辑器中更改功能代码,并希望在Jupyter中重新加载.jl文件。由于reload函数不适用于非模块源文件,因此我必须使用包含arequireareload的过时Autoreload包。它适用于单进程案例。但是,功能代码不会在具有2个或更多进程的任一处理器上重新加载。我正在使用Julia 0.4.3 x86_64。

如何在不重新启动内核的情况下重新加载代码?

0 个答案:

没有答案