Conversation
|
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #12318 +/- ##
==========================================
- Coverage 18.54% 18.52% -0.02%
==========================================
Files 1850 1854 +4
Lines 128011 128003 -8
Branches 45591 45564 -27
==========================================
- Hits 23736 23715 -21
- Misses 84599 84631 +32
+ Partials 19676 19657 -19
*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:
|
There was a problem hiding this comment.
Pull request overview
This PR adopts autoware_agnocast_wrapper to allow switching the node’s executor between standard ROS 2 and CallbackIsolatedAgnocastExecutor (CIE) via the ENABLE_AGNOCAST environment variable.
Changes:
- Adds
autoware_agnocast_wrapperas a package dependency. - Updates CMake to find/link/setup
autoware_agnocast_wrapperand registers the node via the wrapper macro with both ROS 2 and agnocast executor options.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| system/autoware_topic_relay_controller/package.xml | Adds runtime/build dependency on autoware_agnocast_wrapper. |
| system/autoware_topic_relay_controller/CMakeLists.txt | Switches node registration to autoware_agnocast_wrapper_* macros and wires wrapper setup/deps. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Signed-off-by: TetsuKawa <kawaguchitnon@icloud.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> Signed-off-by: TetsuKawa <kawaguchitnon@icloud.com>
13679a5 to
de42955
Compare
Signed-off-by: TetsuKawa <kawaguchitnon@icloud.com>
Description
Apply
autoware_agnocast_wrapperto enableCallbackIsolatedAgnocastExecutor(CIE) for this package, as part of the effort to achieve middleware-transparent scheduling and optimize end-to-end response time across Autoware. By going throughautoware_agnocast_wrapper, CIE activation is controlled by theENABLE_AGNOCASTenvironment variable — when unset or0, the node runs with the standard ROS 2 executor as before; when set to1, it switches toCallbackIsolatedAgnocastExecutor.Changes
Related links
How was this PR tested?
Notes for reviewers
Please review the following aspects:
CMakeLists.txtand launch files in this package have been updated (no missed files).SingleThreadedExecutorInterface changes
None.
Effects on system behavior
When
ENABLE_AGNOCAST=0(default), there is no change in behavior at all — the node runs with the standard ROS 2 executor exactly as before.When
ENABLE_AGNOCAST=1, the executor switches toCallbackIsolatedAgnocastExecutor(CIE). Internally, CIE creates a dedicatedrclcpp::SingleThreadedExecutorfor each callback group, so the fundamental scheduling behavior within each group remains almost identical. The key difference is that, for nodes originally usingSingleThreadedExecutor, callback groups now run in parallel across separate threads, similar toMultiThreadedExecutor.