如何并行运行多个julia文件?

时间:2017-01-04 15:49:36

标签: julia

我有一个非常简单的问题,但我似乎无法在任何地方找到答案。我想使用Julia Terminal并行运行两个.jl文件。 我尝试了include(" file1.jl"&" file2.jl")并包含(" file1.jl")& include(" file2.jl")但这不起作用。

2 个答案:

答案 0 :(得分:1)

我不确定你想要做什么,但如果你想在julia终端上的两个不同的工作人员上运行这两个文件,你可以这样做。

0 1 2 3
4 5 6 7
9 10 11 12

但我很确定会有更好的方法来做你想做的事。

答案 1 :(得分:1)

虽然您可能会将代码与Julia并行计算范例纠缠在一起,但最简单的解决方案似乎是从命令行执行Julia脚本。在这里,我假设您很乐意允许CPU处理任务调度,这可能会也可能不会导致并行执行。

下面是一个可以帮助您入门的骨架管道。将task.jl替换为file1.jlfile2.jl

<强> task.jl

println("running like a cheetah")

<强> run_script.sh

echo `date`
julia task.jl
julia task.jl
echo `date`

<强> run_script_parallel.sh

echo `date`
julia task.jl &
julia task.jl &
wait # do not return before background tasks are complete
echo `date`

从命令行确保您的BASH脚本是可执行的:

chmod +rwx run_script.sh run_script_parallel.sh

立即尝试运行脚本。请注意,我的示例Julia脚本task.jl几乎立即返回,因此这种特殊比较有点愚蠢:

./run_script.sh
./run_script_parallel.sh

我的输出

Thu Jan 5 14:24:57 PST 2017
running like a cheetah
running like a cheetah
Thu Jan 5 14:24:57 PST 2017

Thu Jan 5 14:25:05 PST 2017
running like a cheetahrunning like a cheetah

Thu Jan 5 14:25:06 PST 2017

第一个输出以干净的顺序命令对print语句进行排序。但在第二种情况下观察文本是一起运行的。这是并行打印语句的常见行为。