Skip to content

chore(deps): update Ray to 2.57.0 - #2304

Merged
praateekmahajan merged 4 commits into
NVIDIA-NeMo:mainfrom
praateekmahajan:praateek/ray-2.57
Aug 13, 2026
Merged

chore(deps): update Ray to 2.57.0#2304
praateekmahajan merged 4 commits into
NVIDIA-NeMo:mainfrom
praateekmahajan:praateek/ray-2.57

Conversation

@praateekmahajan

@praateekmahajan praateekmahajan commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bump Ray/Ray Serve 2.56.1 → 2.57.0 and Dynamo 1.3.0.post1 → 1.3.1.
  • Remove obsolete Serve client-cache, HAProxy, protobuf, and ray_dist.jar workarounds.
  • Retarget the opt-in Ray Data diagnostics shim for Ray 2.57 and add low-overhead decision-state attribution.

Relevant upstream behavior

Dynamo 1.3.1 has no relevant production-source change from 1.3.0.post1.

Verified

  • Dependency sync, affected tests, lint, and live Ray Serve deploy/reconnect/shutdown passed.
  • The final Ray 2.57 run emitted 46,072 valid Curator diagnostic events with no missing fields, invalid values, or installation errors.
  • Diagnostics now report blocked durations and internal-vs-output object-store memory for admission/autoscaling decisions. These additions run only when a decision state changes; no per-block or metadata-fetch hot path is instrumented. A real Ray 2.57 pipeline test validates these fields in ray-data.log under Docker.
  • Benchmark runs:
    • All 41 EOS benchmarks passed in the nightly-to-PR comparison.
    • The final-SHA full EOS run passed 39/41 requirements. Both ArXiv backends completed successfully with exit code 0; their count checks were stale because the shared input grew from 45 to 100 tar files.
    • The final diagnostics added no systematic runtime or storage regression: runtime changes did not correlate with diagnostic-event volume, and the full result grew only 0.11% versus the prior Ray 2.57 run.
    • The targeted regression rerun passed and reproduced the meaningful timing signals.
    • Image curation was 8–17s slower with the new 2× ratio. A Ray 2.57 ratio-10 control recovered baseline runtime (318.39s vs 321.07s), eliminated 154–170 downstream-capacity blocks and related actor-scaling decisions, and restored GPU utilization near baseline.
  • Video captioning/embedding also encountered 2× backpressure but showed no meaningful, reproducible end-to-end regression. ALM, transcoding, modifier, and FLEURS were not attributed to this policy.

Follow-up

  • Preserve Ray 2.57's upstream 2× default in this dependency update.
  • Update #2295 to Ray 2.57 and document the measured 2×-versus-10× behavior, threaded metadata fetching, their scheduling/autoscaling interactions, and the limits of the available diagnostics.

Closes NMCUR-312

Signed-off-by: Praateek <praateekm@gmail.com>
@copy-pr-bot

copy-pr-bot Bot commented Aug 11, 2026

Copy link
Copy Markdown

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@praateekmahajan

Copy link
Copy Markdown
Contributor Author

/claude review
@greptileai review

@praateekmahajan

Copy link
Copy Markdown
Contributor Author

/ok to test 3470da2

@github-actions

Copy link
Copy Markdown
Contributor

@greptile-apps

greptile-apps Bot commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR updates Ray and Ray Serve to 2.57.0 and Dynamo to 1.3.1 while removing workarounds made obsolete by the upgraded dependencies.

  • Retargets opt-in Ray Data scheduler diagnostics and adds decision-state duration and object-store attribution.
  • Updates Ray Serve HAProxy discovery and shutdown behavior.
  • Synchronizes dependency constraints, lock data, container behavior, tests, and documentation.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
nemo_curator/backends/ray_data/diagnostics.py Retargets private scheduler hooks to Ray 2.57 and enriches change-oriented diagnostic events with blocked durations and object-store memory attribution.
nemo_curator/core/serve/ray_serve/backend.py Removes the obsolete Serve client-cache workaround and relies on Ray 2.57's packaged HAProxy support.
nemo_curator/core/utils.py Updates local-cluster HAProxy discovery and configures dedicated metrics and statistics ports when a supported binary source exists.
pyproject.toml Raises Ray, Ray Serve, and Dynamo minimum versions and relaxes the obsolete protobuf upper bound.
docker/Dockerfile Removes explicit ray-haproxy setup and the obsolete ray_dist.jar security workaround after the upstream dependency fix.
tests/backends/ray_data/test_diagnostics.py Extends diagnostics validation to cover the newly emitted duration and object-store attribution fields.
uv.lock Synchronizes the resolved environment with Ray 2.57.0, Dynamo 1.3.1, protobuf 6.33.5, and Ray's transitive HAProxy package.

Reviews (5): Last reviewed commit: "test(ray-data): exercise diagnostics wit..." | Re-trigger Greptile

Copy link
Copy Markdown
Contributor Author

/claude review
@greptileai review

Copy link
Copy Markdown
Contributor Author

/ok to test ce29c6b

Comment thread nemo_curator/backends/ray_data/diagnostics.py Outdated
Signed-off-by: Praateek <praateekm@gmail.com>

Copy link
Copy Markdown
Contributor Author

/claude review
@greptileai review

Copy link
Copy Markdown
Contributor Author

/ok to test 3f82a7a

Signed-off-by: Praateek <praateekm@gmail.com>

Copy link
Copy Markdown
Contributor Author

/claude review
@greptileai review

Copy link
Copy Markdown
Contributor Author

/ok to test 985bafb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants