当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python distributed.scheduler.Scheduler.workers_to_close用法及代码示例


用法:

workers_to_close(comm=None, memory_ratio: int | float | None = None, n: int | None = None, key: Callable[[WorkerState], Hashable] | None = None, minimum: int | None = None, target: int | None = None, attribute: str = 'address') → list[str]

找到我们可以低成本关闭的工人

这将返回一个适合退休的工人列表。这些工人没有运行任何东西,并且相对于他们的同行存储的数据相对较少。如果所有工作人员都处于空闲状态,那么我们仍然保持足够的工作人员有足够的 RAM 来存储我们的数据,并有一个舒适的缓冲区。

这适用于像 distributed.deploy.adaptive 这样的系统。

参数

memory_ratio数字

我们希望为存储的数据提供的额外空间量。默认为 2,或者我们希望拥有两倍于当前数据的内存。

nint

关闭的工人数量

minimumint

保留的最少工人数量

key可调用(工人状态)

将 WorkerState 对象映射到组从属关系的可选可调用对象。小组将一起关闭。当关闭工作人员必须集体完成时,这很有用,例如通过主机名。

targetint

关闭后的目标员工人数

attributestr

要返回的 WorkerState 对象的属性,如“address” or “name”。默认为“address”。

返回

to_close:可以关闭的worker地址列表

例子

>>> scheduler.workers_to_close()
['tcp://192.168.0.1:1234', 'tcp://192.168.0.2:1234']

在关闭之前按主机名对工作人员进行分组

>>> scheduler.workers_to_close(key=lambda ws: ws.host)
['tcp://192.168.0.1:1234', 'tcp://192.168.0.1:4567']

移除两名工人

>>> scheduler.workers_to_close(n=2)

保持足够的工人拥有两倍于我们需要的内存。

>>> scheduler.workers_to_close(memory_ratio=2)

相关用法


注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 distributed.scheduler.Scheduler.workers_to_close。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。