获取Julia中的CPU核心数

Pab*_*blo 8 parallel-processing cpu-cores julia

我想获得Julia中可用的核心数量.目前我正在做以下事情:

using PyCall
@pyimport psutil
nCores = psutil.cpu_count()
Run Code Online (Sandbox Code Playgroud)

这称为Python函数.但是,我想使用一些Julia程序.怎么做到呢?

小智 12

Sys.CPU_CORESJulia v1.1.0 中未定义。但是,以下工作可以完成。

length(Sys.cpu_info())
Run Code Online (Sandbox Code Playgroud)


Jos*_*del 6

我不是100%肯定这一点,但CPU_CORES返回我的机器上的(超线程)核心数(OSX 10.9.5和Julia 0.3.5),即使我在串行模式下启动Julia.我一直在使用nworkers()和检查可用内核的数量nprocs().启动没有-p标志的Julia,这两个都返回1.

当我开始朱莉娅时 julia -p 4

julia> nprocs()
5

julia> nworkers()
4
Run Code Online (Sandbox Code Playgroud)

在这两种情况下都CPU_CORES返回8.

  • ```Base.CPU_CORES```已被弃用.为了获得这些信息,你应该尝试```Sys.CPU_CORES```.更多细节可以在[这里]找到(https://github.com/JuliaLang/julia/blob/9ab1519db4ab8c525f84fce542bfc463d9a2b071/base/sysinfo.jl#L21) (3认同)