Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core][compiled graph] Support one-to-all collective ops (e.g. broadcast) #49325

Open
jeffreyjeffreywang opened this issue Dec 18, 2024 · 0 comments
Labels
compiled-graphs core Issues that should be addressed in Ray Core enhancement Request for new feature and/or capability P1 Issue that should be fixed within a few weeks

Comments

@jeffreyjeffreywang
Copy link
Contributor

Description

As part of the effort (meta-issue: #47983) to support collective communication ops, we need to support one-to-all (broadcast) patterns. As discussed in the RFC, we will pass the sender worker handle to the collective call as follows:

workers = [Worker.options(num_gpus=1).remote() for _ in range(3)]
nccl_group_handle = ray.collective.NcclGroup(workers)
# One-to-all pattern.
with InputNode() as inp:
  result = workers[0].fwd.bind(inp)
  results = ray.collective.broadcast.bind(
    result, workers,
    transport=nccl_group_handle)
  dag = MultiOutputNode(results)

# Errors if `broadcast` sender is not part of the group.
dag = dag.experimental_compile()

Use case

No response

@jeffreyjeffreywang jeffreyjeffreywang added enhancement Request for new feature and/or capability triage Needs triage (eg: priority, bug/not-bug, and owning component) labels Dec 18, 2024
@jcotant1 jcotant1 added core Issues that should be addressed in Ray Core compiled-graphs labels Dec 18, 2024
@ruisearch42 ruisearch42 added P1 Issue that should be fixed within a few weeks and removed triage Needs triage (eg: priority, bug/not-bug, and owning component) labels Dec 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
compiled-graphs core Issues that should be addressed in Ray Core enhancement Request for new feature and/or capability P1 Issue that should be fixed within a few weeks
Projects
None yet
Development

No branches or pull requests

3 participants