Dask数组A中的每个块导致每个Dask数组中的块B 0 ,B 1 ,... B n 。随后将B阵列作为zarr保存到磁盘。
对于A中的每个块,B中的相应块一起超过计算节点的存储器。存储器可以容纳一个B阵列的一个块。
如果我只是使用一台计算机来计算B阵列,那么Dask会重新计算A的每个块以保持B阵列的实时块在内存限制之下吗?
我可以将每个任务的内存使用情况提示给调度程序吗?
答案 0 :(得分:2)
截至今天,Dask永远不会因内存原因重新计算任务。它会将多余的数据存储到磁盘(假设您使用的是dask.distributed调度程序)和LRU策略。 Dask通常认为个别任务的结果可以很好地适应记忆。
我可以将每个任务的内存使用情况提示给调度程序吗?
没有。