dask使用延迟来构造函数列表,但指定要使用的进程数

时间:2017-02-23 08:21:08

标签: python dask

我有一个做计算的功能,这里有一个简单的例子,

def add(a,b):
    return a+b

然后我以令人尴尬的平行方式执行此功能100次,

output = [delayed(add)(i,i+1) for i in range(100)]
compute(*output)

我的问题是上面的代码会启动100个进程吗?如果是这样,有没有办法让它开始说10个过程,那么减少开始进程的时间?

1 个答案:

答案 0 :(得分:2)

默认调度程序启动线程池或进程池,其线程/进程数与计算机上具有逻辑核心数相同(尽管这是可配置的)。达斯克斯不会像你有任务那样启动多个流程;正如你的建议,这将是非常低效的。

您可以在this doc page了解有关Dask的调度程序的更多信息。