如何指定默认dask调度程序的线程/进程数

jor*_*ris 10 python dask

有没有办法限制默认线程调度程序使用的内核数(使用dask数据帧时默认)?

使用compute,您可以使用以下命令指定它:

df.compute(get=dask.threaded.get, num_workers=20)
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有办法将其设置为默认值,因此您不需要为每次compute调用指定此项?

例如,在小型集群(例如64个核心)的情况下会很有趣,但是与其他人共享(没有作业系统),并且我不希望在使用dask开始计算时占用所有核心.

MRo*_*lin 14

您可以指定默认的ThreadPool

from multiprocessing.pool import ThreadPool
import dask
dask.config.set(pool=ThreadPool(20))
Run Code Online (Sandbox Code Playgroud)

  • ThreadPool(20) 将进程数设置为 20。有没有办法限制每个进程的线程数?在单个进程中处理多个线程可能会产生不必要的开销。 (2认同)