Trace Module Selective Program Data Recording
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional debugging techniques require capturing the entire program, leading to inefficiencies and user frustration, especially when dealing with large programs or multiple simultaneous traces, which can interrupt device operation and reduce performance.
Innovation Solution
A trace module records a subset of program data based on selected criteria, allowing for trimmed and sampled data to be processed, generating a trace file that reproduces the execution of code, thereby reducing memory and processing overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If conventional trace techniques capture the entire program, then complete program data is available for analysis, but device operation is interrupted and performance is reduced
Solution Approach 1:
The patent segments the program execution into multiple threads and selectively records only specific threads or portions of execution based on criteria (e.g., thread ID, function name, execution path). This allows the tracing system to capture relevant program data without recording the entire program, thereby reducing the processing overhead and minimizing interruptions to device operation while maintaining sufficient information for error analysis.
2Loss of information
If the entire program is recorded, then all execution details are captured, but memory and processing overhead increase significantly
Solution Approach 1:
The patent extracts only the necessary portions of program execution data based on predefined criteria such as specific thread IDs, function names, or execution paths. The trace module selectively captures and stores only these targeted portions rather than the complete program execution, significantly reducing the volume of data that must be stored and processed while preserving the essential execution details needed for error identification.
3Reliability
If multiple programs are traced simultaneously, then comprehensive monitoring is achieved, but processing overhead and resource consumption increase
Solution Approach 1:
The patent applies local quality by enabling selective tracing of specific threads or program portions based on their individual characteristics and relevance. The trace module can identify and record only those threads or execution paths that meet specific criteria (e.g., threads associated with particular functions or exhibiting specific execution patterns), thereby maintaining comprehensive monitoring coverage for relevant areas while reducing processing complexity by excluding irrelevant program portions from simultaneous tracing.
Data Source
AI summary
Techniques for processing recorded program data are described. In implementations, a trace module in a computing device processes instructions of a recorded program and generates a trace file for program optimization. In implementations, the trace module records a subset of a received program for inclusion in the trace file. The computing device can also or instead be implemented to gather and initiate analysis of application data proactively and without user initiation.


