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

feat(ndt_scan_matcher): adding exe time to diagnostics for checking runtime_monitor #4916

Merged
merged 14 commits into from
Sep 27, 2023

Conversation

yvzksgl
Copy link
Member

@yvzksgl yvzksgl commented Sep 7, 2023

Description

This PR offersto add exe_time to diagnostics.

Exe time is useful for observe does NDT have problems while matching scans. I can say with my observations, if NDT exe_time is exceeded 24ms, it will be most likely started to cannot match scans properly. So while I'm checking runtime_monitor i would like to see NDT exe_time. Formerly this PR is a part of #4854.

Related: autowarefoundation/autoware_launch#559

Tests performed

All added options runned through logging simulator and test vehicle.

Effects on system behavior

It gives a facility for observing changes in nearest_voxel_transformation_likelihood and exe_time.

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 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.

  • There are no open discussions or they are tracked via tickets.

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

@github-actions github-actions bot added the component:localization Vehicle's position determination in its environment. (auto-assigned) label Sep 7, 2023
Copy link
Contributor

@kminoda kminoda left a comment

Choose a reason for hiding this comment

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

Thank you for the PR!

@yvzksgl yvzksgl marked this pull request as draft September 7, 2023 10:14
@yvzksgl yvzksgl marked this pull request as ready for review September 7, 2023 10:26
Copy link
Contributor

@kminoda kminoda left a comment

Choose a reason for hiding this comment

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

LGTM except the following part, thanks 🙏

@Motsu-san
Copy link
Contributor

Motsu-san commented Sep 8, 2023

@yvzksgl
Thank you for your contribution.
I would like to respond here about this

Your suggestion of adding a condition to generate warnings is very good in itself.
However, I'm aware that the execution time of NDT varies depending on the environment.
It is difficult to approve a warning at 24 ms because there is no evidence or design for Positive/False detecting rate.
For example, there can be an emergency stop system that operates by seeing this warning, and the addition of this condition will simply have the effect of increasing the frequency of activation.
So, how about setting a default value, such as 100 ms, that can be reliably determined this time that the default update cycle cannot be maintained, so that warnings can be issued with matching threshold values in individual environments?
Or has this threshold been discussed and concluded somewhere? (pull request guidelines)

Copy link
Contributor

@Motsu-san Motsu-san left a comment

Choose a reason for hiding this comment

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

I would like to avoid settings that affect the applications this warning is followed by.

@yvzksgl
Copy link
Member Author

yvzksgl commented Sep 11, 2023

I can create a PR for autoware_launch. Also if you want to discuss about exe_time warning value I can create discussion about it. However, I am okay with 100 and it makes sense to me as well.

@kminoda
Copy link
Contributor

kminoda commented Sep 11, 2023

Please add the autoware_launch PR link in the description, and make sure that both are merged at the same time.

@yvzksgl yvzksgl changed the title feat(ndt_scan_matcher): Adding exe time to diagnostics: For checking runtime_monitor feat(ndt_scan_matcher): Adding exe time to diagnostics for checking runtime_monitor Sep 11, 2023
@kminoda
Copy link
Contributor

kminoda commented Sep 11, 2023

Please fix the following

  • Conflict
  • semantic pull request (PR titles should not include capital letters)
  • pre-commit (fix all the warnings listed)
  • DCO (I will make it pass as a maintainer after LGTM, so no need to deal with it)

@yvzksgl yvzksgl changed the title feat(ndt_scan_matcher): Adding exe time to diagnostics for checking runtime_monitor feat(ndt_scan_matcher): adding exe time to diagnostics for checking runtime_monitor Sep 11, 2023
Copy link
Contributor

@Motsu-san Motsu-san left a comment

Choose a reason for hiding this comment

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

Thank you for your great work!
LGTMeow

@yvzksgl
Copy link
Member Author

yvzksgl commented Sep 12, 2023

Please fix the following

* Conflict

* semantic pull request (PR titles should not include capital letters)

* pre-commit (fix all the warnings listed)

* DCO (I will make it pass as a maintainer after LGTM, so no need to deal with it)

I fixed them but github still says there are conflicts. A bug should be occured on github or something, i guess. Do you mind if I ask you to take a look? Thank you.

@kminoda
Copy link
Contributor

kminoda commented Sep 12, 2023

@yvzksgl Sure, but it may take a while since I have other things to do unfortunately.
Those CIs are just general issues and googling or chatgpt-ing may solve the issue.

@Motsu-san
Copy link
Contributor

@yvzksgl Please resolve conflicts.

@yvzksgl yvzksgl force-pushed the feat/ndt-diagnotics-exe-time branch from eeef736 to cd5a8c8 Compare September 26, 2023 08:38
@yvzksgl yvzksgl enabled auto-merge (squash) September 26, 2023 09:08
@kminoda kminoda added the tag:run-build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Sep 26, 2023
@codecov
Copy link

codecov bot commented Sep 26, 2023

Codecov Report

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

Comparison is base (19ab508) 14.89% compared to head (9163f43) 14.89%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4916      +/-   ##
==========================================
- Coverage   14.89%   14.89%   -0.01%     
==========================================
  Files        1625     1625              
  Lines      112449   112460      +11     
  Branches    34712    34712              
==========================================
  Hits        16752    16752              
- Misses      76959    76970      +11     
  Partials    18738    18738              
Flag Coverage Δ *Carryforward flag
differential 0.00% <0.00%> (?)
total 14.89% <ø> (+<0.01%) ⬆️ Carriedforward from 19ab508

*This pull request uses carry forward flags. Click here to find out more.

Files Coverage Δ
...ion/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp 0.00% <0.00%> (ø)

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

@yvzksgl yvzksgl merged commit 3731fd0 into main Sep 27, 2023
21 of 25 checks passed
@yvzksgl yvzksgl deleted the feat/ndt-diagnotics-exe-time branch September 27, 2023 04:16
shmpwk pushed a commit to tier4/autoware.universe that referenced this pull request Nov 16, 2023
…untime_monitor (autowarefoundation#4916)

* adding exe time to diagnostics

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: kminoda <[email protected]>

* order of the parameters in constructor corrected

* spell check

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: kminoda <[email protected]>

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: Motz <[email protected]>

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: Motz <[email protected]>

* rebase branch to main

* the actual execution time  added to diagnostics message

* execution_time parameter corrected

* integration with header file

* style(pre-commit): autofix

* parameter naming

---------

Co-authored-by: kminoda <[email protected]>
Co-authored-by: Motz <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
shmpwk pushed a commit to tier4/autoware.universe that referenced this pull request Nov 16, 2023
…untime_monitor (autowarefoundation#4916)

* adding exe time to diagnostics

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: kminoda <[email protected]>

* order of the parameters in constructor corrected

* spell check

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: kminoda <[email protected]>

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: Motz <[email protected]>

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: Motz <[email protected]>

* rebase branch to main

* the actual execution time  added to diagnostics message

* execution_time parameter corrected

* integration with header file

* style(pre-commit): autofix

* parameter naming

---------

Co-authored-by: kminoda <[email protected]>
Co-authored-by: Motz <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
shmpwk pushed a commit to tier4/autoware.universe that referenced this pull request Nov 16, 2023
…untime_monitor (autowarefoundation#4916)

* adding exe time to diagnostics

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: kminoda <[email protected]>

* order of the parameters in constructor corrected

* spell check

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: kminoda <[email protected]>

* Update localization/ndt_scan_matcher/config/ndt_scan_matcher.param.yaml

Co-authored-by: Motz <[email protected]>

* Update localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp

Co-authored-by: Motz <[email protected]>

* rebase branch to main

* the actual execution time  added to diagnostics message

* execution_time parameter corrected

* integration with header file

* style(pre-commit): autofix

* parameter naming

---------

Co-authored-by: kminoda <[email protected]>
Co-authored-by: Motz <[email protected]>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:localization Vehicle's position determination in its environment. (auto-assigned) tag: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.

4 participants