我有以下代码:
mutable struct T
a::Vector{Int}
end
N = 100
len = 10
Ts = [T(fill(i, len)) for i in 1:N]
for i = 1:N
destructive_function!(Ts[i])
end
destructive_function!在Ts的每个元素中更改a。
有没有办法使for循环并行化?SharedArray似乎不适用于用户定义的类型。
首先,我不得不说我对并行计算完全陌生(对计算机科学几乎一无所知),所以我对“工作者”或“进程”之类的东西的理解非常有限。但是,我确实有一个关于运行一个简单的for循环的问题,该循环可能在并行迭代之间没有依赖关系。
假设我想要执行以下操作:
for N in 1:5:20
println("The N of this iteration in $N")
end
如果我只是想让这些消息出现在屏幕上,而出现的顺序并不重要,那么如何在Julia 0.6中实现这一点,并在Julia 0.7 (因此是1.0)中供将来参考呢?
我正试着在Juno IDE中启动Julia,但它又回来了
We tried to launch Julia from:
julia
This path can be changed in the settings.
Details:
/bin/sh: julia: command not found
我在论坛上搜索了一下,尝试将朱莉娅的路径设置为
C:\Julia-1.0.3\bin
重新安装朱莉娅-客户端软件包,但似乎没有任何效果。朱莉娅可以通过命令行开始。
提前感谢!
我对在使用工作进程时加载模块时的Julia行为感到困惑。
我需要使用一个相当重的PyPlot模块,它需要相当长的时间来加载。这个项目:
using PyPlot
pygui(true)
println("Loaded")
在我的笔记本电脑上加载大约需要11秒:
% time julia test.jl
INFO: Loading help data...
Loaded
julia test.jl 11,10s user 0,18s system 99% cpu 11,323 total
注意INFO: Loading help data...行。它似乎是由PyPlot模块发
julia> debug("hello")
ERROR: UndefVarError: debug not defined
Stacktrace:
[1] top-level scope at REPL[6]:1
即使尝试过docker,也找不到合适的替代品。
help?> debug
search: @debug
Couldn't find debug
Perhaps you meant @debug, @enum, big or detach
No documentation found.
Binding debug does not ex
这是我在运行我的程序时得到的错误。我使用的是Ubuntu 16.04,安装了Python 2.7.12。我安装了anaconda,希望这能帮助解决这个问题,但它没有。
当我在julia内部运行Conda.list()时,我得到了"matplotlib“和"basemap”(我想包括mpl_toolkits ),当我在julia之外运行conda list时(bash?)我得到了一个更长的列表,其中还包含"matplotlib“和"basemap”。
sys:1: UserWarning: This call to matplotlib.use() has
我定义了一个结构,它应该用作不同函数的输入,而这些函数又是从不同的工作进程调用的。字段值将在函数中更改,因此我不能在函数调用之间构造新的字段值。如何将结构发送给新的工作进程?我已经尝试了包中的@eval @everywhere和sendto。
using Distributed
using Parameters
@with_kw struct Test
path1::String = ""
path2::String = ""
end
test = Test()
addprocs(2)
@eval @everywhere test = $te