本地操作允许使用进程调度程序。分布式工作人员正在使用ThreadPoolExecutor
来计算任务。在dask分布式中,是否可以将ThreadPoolExecutor
替换为ProcessPoolExecutor
?谢谢。
答案 0 :(得分:1)
分布式调度程序允许您通过任何部署选项来处理任何数量的进程。这些中的每一个都可以具有一个或多个线程。因此,您可以灵活地选择自己喜欢的线程和进程组合。
最简单的表达是使用LocalCluster
(默认情况下与Client()
相同):
cluster = LocalCluster(n_workers=W, threads_per_worker=T, processes=True)
使W
个工作线程分别具有T
个线程(可以是1个)。
就目前情况而言,工作程序的实现在内部使用线程池,并且您不能在其位置交换进程池。