[core] Optimize GCS build time#50365
Merged
jjyao merged 5 commits intoray-project:masterfrom Feb 11, 2025
Merged
Conversation
Signed-off-by: dentiny <dentinyhao@gmail.com>
dentiny
commented
Feb 9, 2025
BUILD.bazel
Outdated
Contributor
Author
There was a problem hiding this comment.
There're still quite a few source files under the target, which is hard to separate due to inter-dependency
Signed-off-by: dentiny <dentinyhao@gmail.com>
0d7d6b3 to
59cfe29
Compare
Collaborator
|
@israbbani and @dayshah to review please |
Contributor
|
Some CPP tests are failing to build @dentiny. Agree we should do IWYU and even have it in CI. Also can you kick off the windows/macos builds in premerge as well after, to make sure those don't break. |
Signed-off-by: hjiang <hjiang@anyscale.com>
aslonnie
approved these changes
Feb 11, 2025
jjyao
approved these changes
Feb 11, 2025
Contributor
|
Thanks for doing this! |
11 tasks
xsuler
pushed a commit
to antgroup/ant-ray
that referenced
this pull request
Mar 4, 2025
Signed-off-by: dentiny <dentinyhao@gmail.com>
xsuler
pushed a commit
to antgroup/ant-ray
that referenced
this pull request
Mar 4, 2025
Signed-off-by: dentiny <dentinyhao@gmail.com>
park12sj
pushed a commit
to park12sj/ray
that referenced
this pull request
Mar 18, 2025
Signed-off-by: dentiny <dentinyhao@gmail.com>
edoakes
pushed a commit
that referenced
this pull request
Mar 31, 2025
Followup PR for #50365 The next step is to (1) split interdependency between node manager and resource manager (2) split targets depending on node manager and resource manager Signed-off-by: dentiny <dentinyhao@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR improves build and link time for
gcs_server_libfrom 7m49.451s to 6m55.810s on my devbox (>10% improvement).In this PR, I tried to do a few things:
ray/utilandray/commonfolderThe build time is still intolerably long, eg, a
state_utiltarget takes >120 seconds...I've worked on large C++ binaries, which exceed linker 4GiB linker limit, which have to leverage some hacky ways to work around; but the compilation/link time is still under 15 minutes.
Toolchain setup wise, build file auto-generation and IWYU might be helpful;
but I personally feel it's more easy and important to reduce the interdependency between targets.
Benchmark command for reference: