Trace Data Indexing via Log Buffer Entries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The high speed of processors generates overwhelming volumes of trace data during program execution, making it difficult for programmers to locate specific debugging information within billions of captured events.

Innovation Solution

A method and system that index trace data using a log buffer, where each entry is correlated with an index value written to a register, allowing users to selectively display portions of trace data based on log buffer entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If trace data is captured at high processor speeds, then the volume of captured information increases, but locating specific debugging information becomes difficult

Engineering Contradiction:
Improvevolume of trace dataVSAvoidlocating debugging information
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent segments the large volume of trace data by introducing log buffer entries that act as discrete markers or checkpoints within the continuous stream of trace events. Each log buffer entry divides the trace data into manageable segments that can be independently accessed and analyzed, transforming an overwhelming monolithic dataset into structured, navigable units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces log buffer entries as intermediary elements between the trace data generation process and the debugging analysis process. These entries serve as mediators that provide structured reference points, enabling debuggers to navigate and locate specific information without directly searching through the entire trace data stream.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If all trace data is displayed, then complete debugging information is available, but the interface becomes overwhelming and unusable

Engineering Contradiction:
Improvedebugging information availabilityVSAvoidinterface usability
Core Design Contradiction:
Loss of informationVSEase of operation

Solution Approach 1:

The patent extracts and highlights only the essential debugging information by using log buffer entries as selective access points. Instead of displaying all trace data uniformly, the system extracts relevant portions anchored by log buffer entries, allowing users to focus on specific debugging information while maintaining the option to access complete data when needed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the display of trace data into manageable portions organized around log buffer entries. Each entry serves as a anchor point that divides the overwhelming continuous trace data stream into discrete, navigable sections, making the interface usable by allowing users to jump between specific segments rather than viewing everything at once.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8001427B2Method and system of indexing into trace data based on entries in a log buffer
Publication Date: 2011.08.16 TEXAS INSTRUMENTS INC
  • US8001427B2 patent drawing
  • US8001427B2 patent drawing
  • US8001427B2 patent drawing

AI summary

A method and system of indexing into trace data based on entries in a log buffer. At least some of the illustrative embodiments are methods comprising executing a traced program on a target device. The traced program writes entries to a log buffer within the target device, and the traced program also contemporaneously writes an index value for each entry to a register. The index value written to the register becomes part of trace data regarding the traced program and correlates each entry to a respective portion of the trace data. Using the information one may either or both: display on a display device a portion of the trace data (the portion selected based on selecting an entry from the log buffer); or display on the display a portion of the log buffer (the portion selected based on selecting an entry from the trace data).