Call Path Signatures for Low-Overhead Stack Profiling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing call stack profilers face inefficiencies in profiling large, complex programs due to increased time and memory requirements, especially with high average call stack depths and numerous call paths, making frequent sampling and profiling computationally and memory-intensive.

Innovation Solution

A system maintains and updates call path signatures for each call stack frame, allowing for offline reconstruction of the full stack, reducing computational overhead and memory requirements by encoding stack frames as call path signatures.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional call stack sampling is performed for large, complex programs, then profiling coverage is improved, but time consumption and memory usage increase significantly

Engineering Contradiction:
Improveprofiling coverageVSAvoidtime consumption
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the call stack information into two parts: a compact signature (hash value + depth) that is sampled and stored, and the full call stack that is reconstructed only when needed. This segmentation allows frequent sampling with minimal overhead while preserving the ability to retrieve complete profiling information on demand.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a simplified copy (signature) of the call stack information that can be stored and sampled efficiently. Instead of storing complete call stack frames, only essential information (hash and depth) is captured in the signature, dramatically reducing memory usage and sampling time while allowing reconstruction of the full stack when profiling is required.

Inventive Principle:
Principle #26Copying

2Measurement precision

If traditional call stack sampling is performed for programs with high call stack depth, then profiling accuracy is improved, but memory requirements increase

Engineering Contradiction:
Improveprofiling accuracyVSAvoidmemory requirements
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent creates a compact copy (signature) containing only the hash value and depth information, which occupies minimal memory space. This signature serves as a representative descriptor of the full call stack, allowing accurate profiling without storing the complete stack frames in memory during sampling operations.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent extracts only the essential information (hash and depth) from the complete call stack frame data. By taking out only the critical identifying features and storing them in the signature, the patent achieves accurate profiling while eliminating the memory burden of storing redundant frame information during sampling.

Inventive Principle:
Principle #2Taking out (Extraction)

3Measurement precision

If frequent call stack sampling is performed, then profiling precision is improved, but computational overhead increases

Engineering Contradiction:
Improveprofiling precisionVSAvoidcomputational overhead
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The patent creates a lightweight signature copy that requires minimal computational resources to generate and store. This signature-based approach enables frequent sampling at low computational cost, as generating a hash and depth value is far less expensive than capturing and processing complete call stack frames.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent changes the parameter representation from complete call stack frames to compact signatures (hash + depth). This parameter transformation reduces the computational complexity of sampling operations, enabling frequent profiling with minimal energy consumption while maintaining the ability to reconstruct full stack information when needed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12493542B2Call stack profiling with hardware-assisted call path signature generation
Publication Date: 2025.12.09 GOOGLE LLC
  • US12493542B2 patent drawing
  • US12493542B2 patent drawing
  • US12493542B2 patent drawing

AI summary

Aspects of the disclosure relate to computing and maintaining stack call signatures with support for fast online stack unwinding. Instead of sampling and unwinding stack frames, a system maintains and updates a separate call path signature for each sampled frame. The call path signature encodes the contents of each frame of a stack of frames forming a call path. A call path “summary” stack is maintained and processed from the bottom-up to recreate the full stack corresponding to a sampled frame.