-
Notifications
You must be signed in to change notification settings - Fork 84
[DLStreamer] Extend latency tracer to support multiple pipelines/branches in the gst launch string #1543
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
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
…ltiple-sources Extend latency_tracer to support multiple GStreamer pipeline branches
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
…-tracer Add source_name and sink_name fields to latency tracer output
…pilot/remove-logging-overhead
Remove logging overhead in latency tracer for non-writable buffers
…ltiple-sources Copilot/extend latency tracer multiple sources
- Added find_upstream_source() function to recursively walk upstream - Modified do_push_buffer_pre() to use topology analysis - Updated cal_log_pipeline_latency() to use topology analysis - Simplified add_latency_meta() to remove source_element tracking Co-authored-by: xwu2intel <[email protected]>
- Updated README.md to explain topology analysis approach - Marked source_element field as deprecated in metadata header - Added detailed comments explaining the new implementation Co-authored-by: xwu2intel <[email protected]>
…used parameter - Added proper GST_ITERATOR_RESYNC and GST_ITERATOR_ERROR handling - Removed unused elem parameter from add_latency_meta() - Updated all call sites to use new signature Co-authored-by: xwu2intel <[email protected]>
…or skipped buffers Co-authored-by: xwu2intel <[email protected]>
…ification Fix latency tracer source identification via topology analysis
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Fix duplicate logging and per-branch frame counters in latency_tracer
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Co-authored-by: xwu2intel <[email protected]>
Support multiple pipelines (sequential and concurrent) in latency tracer
|
Comment sent via email. |
tbujewsk
left a comment
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 fix issues with the
- code-style
- check license headers
- static C/C++ code analysis -> coverity scans
Skip pylint,yamllint,shellcheck scans.
tjanczak
left a comment
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.
Xintian, you were showing built-in latency tracers (in GStreamer) work for both single and mutli pipelines. In that case, I'd rather write a sample how to measure latency using built-pin tracers and remove DLS-streamer custom traces. This will save our maintenance effort going forward.
The built-in latency tracer carries significant performance overhead. Although the result is right, the performance degradation makes it inadequate to use in the sample optimization. Please, this PR already implemented the required feature and has been validated. |
Description
The existing latency tracer only supports a single pipeline/branch in the gst launch string. This patch extends the support to multiple pipelines/branches. Also included is performance optimization to reduce tracing overhead.
Any Newly Introduced Dependencies
N/A
How Has This Been Tested?
Unit tested with common pipelines
Checklist: