Skip to content
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(image_projection_based_fusion,lidar_centerpoint): add cuda preprocess #5681

Merged
merged 5 commits into from
Nov 29, 2023

Conversation

wep21
Copy link
Contributor

@wep21 wep21 commented Nov 26, 2023

Description

🤖[deprecated] Generated by Copilot at 6d9c35d

This pull request refactors and optimizes the code for the pointpainting fusion and centerpoint algorithms for 3D object detection. It introduces new CUDA functions and kernels for voxel generation and feature extraction, and improves the memory management and performance of the existing ones. It also renames and modifies some functions and classes to better reflect their functionality and simplify their interface. The main files affected are pointpainting_trt.hpp, preprocess_kernel.cu, voxel_generator.cpp, and centerpoint_trt.cpp.

Related links

Tests performed

I've tested with rosbag and standalone launch file.
I've confirmed the pre-processing time decreases after implementing this PR.

Notes for reviewers

Interface changes

Effects on system behavior

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.

  • The PR follows the pull request guidelines.
  • The PR has been properly tested.
  • The PR has been reviewed by the code owners.

Post-review checklist for the PR author

The PR author must check the checkboxes below before merging.

  • There are no open discussions or they are tracked via tickets.
  • The PR is ready for merge.

After all checkboxes are checked, anyone who has write access can merge the PR.

Signed-off-by: wep21 <daisuke.nishimatsu1021@gmail.com>
Signed-off-by: wep21 <daisuke.nishimatsu1021@gmail.com>
Signed-off-by: wep21 <daisuke.nishimatsu1021@gmail.com>
Signed-off-by: wep21 <daisuke.nishimatsu1021@gmail.com>
@github-actions github-actions bot added the component:perception Advanced sensor data processing and environment understanding. (auto-assigned) label Nov 26, 2023
@wep21 wep21 added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Nov 26, 2023
Copy link

codecov bot commented Nov 26, 2023

Codecov Report

Attention: 116 lines in your changes are missing coverage. Please review.

Comparison is base (765a596) 15.32% compared to head (0b75afa) 0.00%.
Report is 64 commits behind head on main.

Files Patch % Lines
...age_projection_based_fusion/src/utils/geometry.cpp 0.00% 22 Missing ⚠️
...rception/lidar_centerpoint/lib/centerpoint_trt.cpp 0.00% 21 Missing ⚠️
...sion/src/pointpainting_fusion/preprocess_kernel.cu 0.00% 18 Missing ⚠️
...ar_centerpoint/lib/preprocess/preprocess_kernel.cu 0.00% 18 Missing ⚠️
...usion/src/pointpainting_fusion/voxel_generator.cpp 0.00% 13 Missing ⚠️
...ion/src/pointpainting_fusion/pointpainting_trt.cpp 0.00% 9 Missing ⚠️
...dar_centerpoint/lib/preprocess/voxel_generator.cpp 0.00% 8 Missing ⚠️
...ction_based_fusion/src/roi_cluster_fusion/node.cpp 0.00% 7 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #5681       +/-   ##
==========================================
- Coverage   15.32%   0.00%   -15.33%     
==========================================
  Files        1721      35     -1686     
  Lines      118559    1719   -116840     
  Branches    37995       0    -37995     
==========================================
- Hits        18169       0    -18169     
+ Misses      79657    1719    -77938     
+ Partials    20733       0    -20733     
Flag Coverage Δ
differential 0.00% <0.00%> (?)
total ?

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@wep21 wep21 requested a review from tzhong518 November 27, 2023 05:44
@wep21 wep21 changed the title perf(image_projection_based_fusion, lidar_centerpoint): add cuda preprocess perf(image_projection_based_fusion,lidar_centerpoint): add cuda preprocess Nov 27, 2023
@wep21 wep21 requested a review from dan-dnn November 27, 2023 10:16
Copy link
Contributor

@yukke42 yukke42 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I confirmed that it works without any issue and execution time is reduced by this PR.

@yukke42
Copy link
Contributor

yukke42 commented Nov 29, 2023

average delay of centerpoint: 0.232 → 0.217
average delay of pointpainting: 0.280 → 0.247

@wep21 wep21 merged commit 5daaf87 into main Nov 29, 2023
28 of 31 checks passed
@wep21 wep21 deleted the cuda-preprocess branch November 29, 2023 09:56
danielsanchezaran pushed a commit to tier4/autoware.universe that referenced this pull request Dec 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:perception Advanced sensor data processing and environment understanding. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants