我正在使用朱莉娅,并想知道我什么时候做了以下事情:
julia> addprocs()
4-element Array{Int64,1}:
2
3
4
5
julia> workers()
4-element Array{Int64,1}:
2
3
4
5
julia> nprocs()
5
Run Code Online (Sandbox Code Playgroud)
我以为我的MacBook只有4个核心?第五个来自哪里?
nprocs()不返回处理器的数量 - 这是进程的数量.作为帮助状态,addprocs()相当于addprocs(Sys.CPU_CORES).也就是说,它增加了许多新工人.一般的想法是,除了将工作分配给所有工作者(节点2-5)之外,您的主节点(节点1)不会做太多工作.
还要注意你的CPU有点捏造真相给你(和朱莉娅) - 你真的只有两个物理核心.在许多情况下,对于计算量很大的代码,虚拟内核对您来说不会有太大作用.