-
Notifications
You must be signed in to change notification settings - Fork 691
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
refactor: add autoware_cuda_dependency_meta #10073
Conversation
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #10073 +/- ##
==========================================
+ Coverage 26.31% 26.39% +0.07%
==========================================
Files 1384 1389 +5
Lines 107560 107785 +225
Branches 41421 41515 +94
==========================================
+ Hits 28306 28445 +139
- Misses 76433 76503 +70
- Partials 2821 2837 +16
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
305f2ac
to
9e8c5a5
Compare
Hi @esteve thanks for working on this task, is this ready for review? Are there any blockers? |
9e8c5a5
to
d2f96cf
Compare
@xmfcx I'm testing this in our buildfarm to make sure packages that depend on |
91e7ad2
to
7bd7b08
Compare
This PR is now ready for review, the buildfarm builds fine when excluding the autoware_cuda_dependency_meta autowarefoundation/autoware-deb-packages#127 |
f6af636
to
4d3318e
Compare
@xmfcx this PR requires approvals from 15 people, would it be possible to merge it with only one or two? I worry it might take too long if we have to wait for 15. Thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
I'm not only sure if for new packages we should align package version in package.xml
with latest tag. Nevertheless, new release will overwrite it.
@esteve Or rather, a question: |
@knzo25 if the package depends on CUDA in one way or another, yes, it must depend on |
$ colcon list --base-paths src/universe/autoware.universe --packages-above autoware_tensorrt_common autoware_cuda_utils --names-only
autoware_bytetrack
autoware_cuda_utils
autoware_detected_object_validation
autoware_detection_by_tracker
autoware_image_projection_based_fusion
autoware_lidar_apollo_instance_segmentation
autoware_lidar_centerpoint
autoware_lidar_transfusion
autoware_probabilistic_occupancy_grid_map
autoware_raindrop_cluster_filter
autoware_shape_estimation
autoware_tensorrt_classifier
autoware_tensorrt_common
autoware_tensorrt_yolox
autoware_traffic_light_classifier
autoware_traffic_light_fine_detector
tier4_perception_launch
tier4_simulator_launch Many packages are missing this dependency. Could you update them?
@knzo25 I'd suggest that we should not allow partial dependency for cuda for packages. A package should either depend on it or not. And the building behavior set in CMakeLists.txt should reflect that. If a node out of this package needs to be used in a non-cuda environment, it should be separated into another package. But until that happens, we will treat the entire package as a cuda package. |
@xmfcx |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
About 6 packages are missing the dependency.
I'm slightly conflicted about <exec_depend>
ency. I think we can exclude them?
I don't see why those packages should depend on @xmfcx @mitsudome-r @youtalk Could we clarify this? Thanks. |
Right, I got confused when you said:
I thought you've already added some packages that depended on CUDA indirectly. Sorry, for my misunderstanding🙇♂️. I've also stated in the original issue to add only direct dependencies so I'm in line with you 👍 autoware_bytetrack also depends on CUDA to build I guess, at least it is using some CUDA related parameters in its cmakelists file. |
CMakeLists has tensorrt version variable passed to it, gray area?:
Indirectly dependent on CUDA packages:
The rest are directly dependent and the deps are added within this PR ✅ |
You're right, I missed that one. Basically what I did was to |
Signed-off-by: Esteve Fernandez <esteve.fernandez@tier4.jp>
Signed-off-by: Esteve Fernandez <esteve.fernandez@tier4.jp>
Signed-off-by: Esteve Fernandez <esteve.fernandez@tier4.jp>
Signed-off-by: Esteve Fernandez <esteve.fernandez@tier4.jp>
Description
Added meta package that packages that depend on CUDA must depend on.
Related links
Parent Issue:
How was this PR tested?
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.