Julia 使用./startup.jl文件设置nprocs()

Julia 使用./startup.jl文件设置nprocs(),julia,distributed-computing,Julia,Distributed Computing,为什么设置ENV[JULIA\u CPU\u THREADS]=5和ENV[JULIA\u NUM\u THREADS]=5不会影响nprocs()?以下是我在创业时得到的: julia> versioninfo() Julia Version 1.3.1 Commit 2d5741174c (2019-12-30 21:36 UTC) Platform Info: OS: Linux (x86_64-pc-linux-gnu) CPU: Intel(R) Core(TM) i5-

为什么设置
ENV[JULIA\u CPU\u THREADS]=5
ENV[JULIA\u NUM\u THREADS]=5
不会影响
nprocs()
?以下是我在创业时得到的:

julia> versioninfo()
Julia Version 1.3.1
Commit 2d5741174c (2019-12-30 21:36 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i5-9600K CPU @ 3.70GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
  JULIA_CPU_THREADS = 5
  JULIA_NUM_THREADS = 5
julia> nprocs()
1

那么环境变量正在设置,但进程没有分配

原因是线程不是进程。有不同种类的“平行性”。进程用于分布式(多核)计算,线程用于多线程(在一台机器/节点上)。有关更多信息,请参阅Julia文档的一节

要启动多个进程,请使用命令行标志
-pn
,其中
N
是工作进程的数量。或者,您可以在脚本中以编程方式添加进程(如startup.jl)