如何与Dask一起运行一组节点

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

我有一个图像处理图,我想批量处理许多图像。我的图表如下所示:My graph made from delayed functions

当我运行图表时,散景显示执行路径如下:How I observe it to run in bokeh

这会导致我的计算机内存不足并崩溃,因为加载映像的输出是兆字节的图像。我希望图形像这样运行,因为保存结果的结果非常小,应该没问题:How I want it to run in bokeh

我怎么能用dask做到这一点?

Customizing Optimization似乎在我可能融合中间节点的地方会很有用。这是最好的方法吗?

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

Dask更喜欢执行可以释放内存的任务,这在你的例子中应该是深度的。但是,它也为你提供了并行性;所以最简单的方法就是拥有一名工人。

实际上,图中的线性链将成为保险丝的良好案例。您可以自己调用优化(dask.optimization.inline_functionsdask.optimization.fuse,不需要自定义),或者您可以编写一个函数,在单个任务(save(process(load(..))))中依次显式调用每个子任务。

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