-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
feat(autoware.repos): add fork of ament_cmake for faster build #4141
feat(autoware.repos): add fork of ament_cmake for faster build #4141
Conversation
9e3fcd3
to
fbf34b0
Compare
Signed-off-by: Ryohsuke Mitsudome <[email protected]>
fbf34b0
to
823c80d
Compare
@mitsudome-r did you have ccache configured for these measurements? If you did, the cached build artifacts in |
I've made multiple tests today, with and without ccache. Specs: Cuda compilation tools, release 12.3, V12.3.107 Scenario Simulator v2 was also compiled. TVM packages were built too (I think we build them all the time now but I'm not sure). Total package count: 392 Also in my tests, I've switched between the So the we had to recompile Tests with CCacheFirst 4 tests were made with ccache, therefore the experiments are in chronological order since they all use the cache before them.
Tests without CCacheIn these tests, the order is not important since there is no cache.
In tests 5 and 6 I was also light browsing on some tabs but on 7 and 8 PC was completely focused on compiling. In the end, with the new version, planning simulator demo works as expected. I've also rebased the 2 commits we had over latest Let's merge this! |
@VRichardJP it turns out we had a copy of your branch on autowarefoundation fork. https://github.com/autowarefoundation/ament_cmake/commits/feat/faster_ament_libraries_deduplicate/ And it also has a commit from @TakaHoribe it seems. I have rebased it over latest humble too, it should be alright! |
Just to be sure this passes the tests, I will run build and test job on this manually before merging. (Normally it runs daily) |
@mitsudome-r I've also duplicated your branch to autowarefoundation/autoware build-main: https://github.com/autowarefoundation/autoware/actions/runs/7887742760 build-main-self-hosted: https://github.com/autowarefoundation/autoware/actions/runs/7887791883 |
https://github.com/autowarefoundation/autoware/actions/workflows/build-main.yaml We have started getting no space left for main autoware branch too @mitsudome-r 😨 We should speed up reducing the |
Merged regardless, these CI's were only building, not testing anyways. |
Signed-off-by: Ryohsuke Mitsudome <[email protected]> Signed-off-by: Oguz Ozturk <[email protected]>
and I see ament/ament_cmake#448 is already merged. |
@felixf4xu should be here: https://github.com/ament/ament_cmake/commits/humble/ (backported to humble) and also be available as part of the debian packages. (Which also takes up to a month after being backported) But this package is very light, so it's alright to have it as a fork here. |
then should I uninstall the my apt search results like this:
|
you do not need to uninstall it, the warning probably can be ignored. If you share the exact logs, I can answer better. |
|
Yes, you can safely ignore this. This warning is an issue when you want to interoperate between system and workspace libraries/messages. Bıt for these cmake packages, it won't be a problem. It will use the workspace packages. |
Description
This PR will add the fork of ament_cmake which makes the build of Autoware faster. This originated from the discussion in https://github.com/orgs/autowarefoundation/discussions/3491. We were waiting for this PR to be merged to the upstream, but we already have issues with build check CI taking too much time in autoware.universe so I think it's worth using the fork until the PR is merged to upstream.
Related links
https://github.com/orgs/autowarefoundation/discussions/3491
ament/ament_cmake#448
Tests performed
run vcs import and check with colcon build.
Notes for reviewers
Interface changes
Effects on system behavior
On my machine, build time has changed from:
to:
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.
In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.