限制内核数量Dask不起作用?

问题描述 投票:1回答:1

即使我将核心数设置为24,所有120个核心都在使用100%。

I set up dask this way

all cores are in use

python dask dask-distributed
1个回答
1
投票

你实际上告诉Dask的是,一次运行最多24个Python函数。但是,这些Python函数可以执行任何他们想要的操作,包括使用许多线程。

如果您将NumPy与任何现代BLAS实现一起使用,这种情况尤为常见。对此的常见解决方案是设置环境变量

OMP_NUM_THREADS=1  # if you're using OpenBLAS or another OpenMP library
MKL_NUM_THREADS=1  # if you're using MKL

但是我不知道你的代码实际上做了什么,所以可能有一些其他的方法来控制你的函数中的线程与上面的不同。

您采用的两种方法也适用于不同的调度程序。第一个适用于本地调度程序。第二个是分布式调度程序。这很好,但默认情况下分布式调度程序将接管,并且示例的前几行没有任何效果。

© www.soinside.com 2019 - 2024. All rights reserved.