我有一些计算从 python 调用 pardiso() 求解器。求解器以对 python 不透明的方式分配自己的内存,但用于访问该内存的指针存储在 python 中。如果我尝试使用 dask.delayed 运行这些计算,有没有办法告诉 dask 计算的预期内存消耗,以便它可以适当地安排它们?
问问题
56 次
1 回答
0
对于 dask 应该遵守某些约束的情况,至少有两种解决方案:resources
argument 和Semaphore
.
对于资源,工作流程是为每个工作人员分配一些资源(在启动工作人员时通过 cli 或在其他类型的集群中使用resources
kwarg )。然后,代码将指定在或LocalCluster
时每个任务使用了多少资源。.compute
.map/.submit
工作流程Semaphore
是在创建信号量时指定可能的租约数量(请注意,与资源不同,这是一个整数,因此在某种意义上不太灵活)(请参阅文档)。然后,每当访问昂贵的资源时,都应该将其包装在with sem
上下文管理器中。
于 2021-10-09T13:36:33.700 回答