在内存限制下重新计算任务

Recalculate task under memory constraint

Dask 数组 A 中的每个块导致每个 Dask 数组 B0, B1, ... B 中的一个块n。 B 数组随后作为 zarr 保存到磁盘。

对于A中的每一个区块,B中对应的区块加起来超过了一个计算节点的内存。内存可以容纳一个 B 数组的一个块。

如果我只使用一台计算机来计算 B 数组,Dask 会重新计算 A 的每个块以使 B 数组的活动块保持在内存限制之下吗?

我可以向调度程序提示每个任务的内存使用情况吗?

从今天起,Dask 将永远不会因为内存原因重新计算任务。它将使用 LRU 策略将多余的数据存储到磁盘(假设您正在使用 dask.distributed 调度程序)。 Dask 通常假设单个任务的结果很适合记忆。

Can I hint the memory usage of each task to the scheduler?

没有。