ray.util.获取当前放置组#

ray.util.get_current_placement_group() PlacementGroup | None[源代码]#

获取任务或角色当前使用的放置组。

如果工作线程没有当前的放置组,则返回 None。例如,如果您在驱动程序中调用此方法,它将返回 None(因为驱动程序从不属于任何放置组)。

示例

import ray
from ray.util.placement_group import get_current_placement_group
from ray.util.scheduling_strategies import PlacementGroupSchedulingStrategy

@ray.remote
def f():
    # This returns the placement group the task f belongs to.
    # It means this pg is identical to the pg created below.
    return get_current_placement_group()

pg = ray.util.placement_group([{"CPU": 2}])
assert ray.get(f.options(
        scheduling_strategy=PlacementGroupSchedulingStrategy(
            placement_group=pg)).remote()) == pg

# Driver doesn't belong to any placement group,
# so it returns None.
assert get_current_placement_group() is None
返回:

放置组对象。如果当前任务或角色没有使用任何放置组创建,则为 None。

返回类型:

PlacementGroup