-
Notifications
You must be signed in to change notification settings - Fork 664
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
perf(probabilistic_occupancy_grid_map): performance tuning for pointcloud based occupancy grid map #7687
perf(probabilistic_occupancy_grid_map): performance tuning for pointcloud based occupancy grid map #7687
Conversation
Thank you for contributing to the Autoware project! 🚧 If your pull request is in progress, switch it to draft mode. Please ensure:
|
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
3fb5ce1
to
dda0c0d
Compare
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.
Please insert blank lines into your code to improve readability.
https://medium.com/@wijithbandara/best-practices-in-coding-9b9ffbdbfe27
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
...occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_projective.cpp
Outdated
Show resolved
Hide resolved
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
...occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_projective.cpp
Outdated
Show resolved
Hide resolved
...abilistic_occupancy_grid_map/pointcloud_based_occupancy_grid_map/occupancy_grid_map_base.hpp
Outdated
Show resolved
Hide resolved
...bilistic_occupancy_grid_map/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.hpp
Outdated
Show resolved
Hide resolved
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
...stic_occupancy_grid_map/src/pointcloud_based_occupancy_grid_map/occupancy_grid_map_fixed.cpp
Outdated
Show resolved
Hide resolved
Signed-off-by: taisa1 <[email protected]>
Signed-off-by: taisa1 <[email protected]>
…universe into perf_occupancy_grid_map
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.
Cool! LGTM
Signed-off-by: taisa1 <[email protected]>
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #7687 +/- ##
==========================================
+ Coverage 28.42% 28.44% +0.01%
==========================================
Files 1591 1592 +1
Lines 116213 116265 +52
Branches 49606 49606
==========================================
+ Hits 33039 33077 +38
- Misses 74174 74188 +14
Partials 9000 9000
*This pull request uses carry forward flags. Click here to find out more. ☔ View full report in Codecov by Sentry. |
…loud based occupancy grid map (autowarefoundation#7687) * perf: performance tuning Signed-off-by: taisa1 <[email protected]> * fix: remove unnecessary change Signed-off-by: taisa1 <[email protected]> * chore: edit comments Signed-off-by: taisa1 <[email protected]> * fix: change the way of offset initialization Signed-off-by: taisa1 <[email protected]> * fix: compile error and name Signed-off-by: taisa1 <[email protected]> * fix: take common parts as func Signed-off-by: taisa1 <[email protected]> * refactor: change variable name Signed-off-by: taisa1 <[email protected]> * refactor: add some blank lines Signed-off-by: taisa1 <[email protected]> * fix: made unapplied change Signed-off-by: taisa1 <[email protected]> * fix: compile error Signed-off-by: taisa1 <[email protected]> * refactor: simplified conditions Signed-off-by: taisa1 <[email protected]> * fix: apply changes to projective Signed-off-by: taisa1 <[email protected]> * fix: remove reserve from projective Signed-off-by: taisa1 <[email protected]> * refactor: reduce too many arguments Signed-off-by: taisa1 <[email protected]> * refactor: delete angle_increment Signed-off-by: taisa1 <[email protected]> * fix: reflect review Signed-off-by: taisa1 <[email protected]> * fix: build error Signed-off-by: taisa1 <[email protected]> --------- Signed-off-by: taisa1 <[email protected]> Co-authored-by: atsushi yano <[email protected]>
Description
This PR makes pointcloud based occupancy grid map faster without changing logical output.
The tail latency of the probabilistic_occupancy_grid_map (type: OccupancyGridMapFixedBlindSpot) gets about x1.5 faster with this PR merged.
Pointcloud based occupancy grid map has two types.
This PR focuses on OccupancyGridMapFixedBlindSpot (default type), but it also changes implementation of OccupancyGridMapProjectiveBlindSpot.
The main changes are as follows:
In addition, some small changes are made to improve performance.
Measurement Condition
Related links
Private Links:
Tests performed
Local test
It has been verified that the content of output topics with the same timestamp is identical before and after the PR.
Download files from https://drive.google.com/drive/folders/1rxwKyDgtOYEfnNyFPES1hga2I_-KCK0l. This folder contains files for rosbag simulation, topic output as csv, and script for comparison.
For comparing results, run
python3 python3 validator.py default_(fix|projective).csv pr_(fix|projective).csv
.Evaluator test
The perception mode test has been passed.
https://github.com/tier4/auto-evaluator/actions/runs/9855260202
Notes for reviewers
None.
Interface changes
None.
Effects on system behavior
None.
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.