Julia 中线程的问题环境变量

Question environmental variable of threads in Julia

我最近开始使用 Julia 在服务器 (Centos7) 上进行计算任务。但是我遇到了一个关于 Julia 使用的线程的问题。配备80个虚拟CPU的服务器在计算过程中无法使用其大部分CPU。

$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                80
On-line CPU(s) list:   0-79
Thread(s) per core:    2
Core(s) per socket:    20
Socket(s):             2
...

我试图通过更改~/.bashrc、~/.bash_profile文件来改变这种情况,将我个人目录下的线程设置为60,但是线程数似乎被冻结了4.

另外,我试过用set命令,还是不行。

$ set JULIA_NUM_THREADS = 60
$ echo $JULIA_NUM_THREADS 
4

我还能做些什么来解决这个问题吗?非常感谢任何见解!

我通过简单地使用命令解决了这个问题

export JULIA_NUM_THREADS=60

虽然不是文档中所说的,但在我的服务器上它以某种方式工作。我将尝试忽略其背后的机制。

抱歉打扰了。

set 不是您要使用的内置函数。要么使用

export JULIA_NUM_THREADS=60

在bash中设置环境变量或用

启动julia
JULIA_NUM_THREADS=60 julia

julia --threads 60