Skip to content

[G-API] Pipeline modeling tool: Refactor calculating performance statistics#23211

Merged
alalek merged 15 commits intoopencv:4.xfrom
TolyaTalamanov:at/pipeline-modeling-tool-perf-alignment
Feb 15, 2023
Merged

[G-API] Pipeline modeling tool: Refactor calculating performance statistics#23211
alalek merged 15 commits intoopencv:4.xfrom
TolyaTalamanov:at/pipeline-modeling-tool-perf-alignment

Conversation

@TolyaTalamanov
Copy link
Copy Markdown
Contributor

@TolyaTalamanov TolyaTalamanov commented Feb 1, 2023

Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

  • I agree to contribute to the project under Apache 2 License.
  • To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
  • The PR is proposed to the proper branch
  • There is a reference to the original bug report and related work
  • There is accuracy test, performance test and test data in opencv_extra repository, if applicable
    Patch to opencv_extra has the same branch name.
  • The feature is well documented and sample code can be built with the project CMake

Overview

  • Added wait_mode property for source. It has two supported options: busy/sleep. The reason for adding is that busy wait approach works more accurate than sleep.
  • Report latency for every iteration as double instead of int.
  • Added warm-up iteration.
  • Changed the format of reported statistics. Use one line representation to make it easier to parse via regex.

@TolyaTalamanov
Copy link
Copy Markdown
Contributor Author

@smirnov-alexey Could you have a look, please?


LARGE_INTEGER li;
li.QuadPart = -ns_units;
// NB: It takes portions of 100 nanoseconds.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Please, change It to QuadPart

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Done

Copy link
Copy Markdown
Contributor

@smirnov-alexey smirnov-alexey left a comment

Choose a reason for hiding this comment

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

Looks good. Please address my comments though

@TolyaTalamanov TolyaTalamanov force-pushed the at/pipeline-modeling-tool-perf-alignment branch from bd255b3 to bf133e1 Compare February 9, 2023 17:57
@TolyaTalamanov
Copy link
Copy Markdown
Contributor Author

@dmatveev, @alalek Can we merge this?

Copy link
Copy Markdown
Contributor

@dmatveev dmatveev left a comment

Choose a reason for hiding this comment

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

👍

@alalek alalek merged commit 6c235c8 into opencv:4.x Feb 15, 2023
a-sajjad72 pushed a commit to a-sajjad72/opencv that referenced this pull request Mar 30, 2023
…ing-tool-perf-alignment

[G-API] Pipeline modeling tool: Refactor calculating performance statistics

* Add warmup execution

* Align perf metrics

* Add busy wait mode for source

* Small fix for late frames

* pl_fn to src_fn

* Change show statistics

* Correct warm-up iteration

* Properly calculate drop frames

* Enable frame dropping for streaming mode

* Enable frame dropping for streaming mode

* Fix comments to review

* Fix typos

* Cosmetic
@asmorkalov asmorkalov mentioned this pull request May 31, 2023
geversonsto pushed a commit to stodev-com-br/opencv that referenced this pull request Jun 3, 2023
…ing-tool-perf-alignment

[G-API] Pipeline modeling tool: Refactor calculating performance statistics

* Add warmup execution

* Align perf metrics

* Add busy wait mode for source

* Small fix for late frames

* pl_fn to src_fn

* Change show statistics

* Correct warm-up iteration

* Properly calculate drop frames

* Enable frame dropping for streaming mode

* Enable frame dropping for streaming mode

* Fix comments to review

* Fix typos

* Cosmetic
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants