Sparse Random Instrumentation for Scalable Dataflow Analysis

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Dataflow analysis is highly unscalable due to the need to track substantial information across the entire application, making it feasible only for small applications, and existing methods are not effective in handling large-scale or distributed computing environments.

Innovation Solution

A method involving sparse random instrumentation on multiple computing devices to detect application initiation, applying instrumentation procedures to randomly selected portions of the application, and assembling an integrated dataflow solution from recorded dataflows, ensuring asymptotically complete coverage of code pathways without humanly perceptible performance slowdown.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a thick layer of instrumentation is applied to track all statements and memory manipulations, then dataflow analysis completeness is improved, but device complexity and scalability deteriorate

Engineering Contradiction:
Improvedataflow analysis completenessVSAvoidinstrumentation burden
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments the instrumentation by randomly selecting and instrumenting only specific portions (e.g., 1-10%) of the application code rather than instrumenting all statements. This segmentation maintains measurement precision through statistical representation while dramatically reducing device complexity and instrumentation burden.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial instrumentation by instrumenting only a subset of code pathways sufficient to achieve asymptotically complete coverage. This partial action approach provides enough dataflow information for meaningful analysis without the excessive complexity of tracking every single statement and memory operation.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If comprehensive instrumentation is applied to track all dataflows, then analysis accuracy is improved, but productivity and scalability deteriorate

Engineering Contradiction:
Improvedataflow tracking accuracyVSAvoidanalysis scalability
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent divides the application into randomly selected portions for instrumentation, achieving scalability by processing only segments rather than the entire application. This segmentation enables accurate dataflow analysis of large-scale applications without the productivity penalty of comprehensive instrumentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the instrumentation density parameter from 100% (all statements) to a random sample (1-10% of statements). This parameter change maintains analysis accuracy through statistical validity while dramatically improving productivity and scalability for large applications.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If instrumentation is applied to all code pathways, then dataflow coverage is improved, but loss of time and performance slowdown worsen

Engineering Contradiction:
Improvecode pathway coverageVSAvoidperformance slowdown
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent applies partial instrumentation to randomly selected portions of code, achieving sufficient coverage (asymptotically complete) without instrumenting every pathway. This reduces the time overhead and performance slowdown while maintaining adequate dataflow coverage for meaningful analysis.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent changes the coverage parameter from complete instrumentation (100% of pathways) to random sampling (asymptotically complete coverage). This parameter change reduces the time loss and performance impact while maintaining sufficient dataflow information for accurate analysis.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9996324B1Cooperative creation of dataflow models using sparse random instrumentation
Publication Date: 2018.06.12 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US9996324B1 patent drawing
  • US9996324B1 patent drawing
  • US9996324B1 patent drawing

AI summary

Dataflow analysis is provided by monitoring a first and a second computing device to detect an initiation of an application on one or more of these computing devices. In response to detecting the initiation of the application on the first computing device, a first instrumentation procedure is applied to a first randomly selected portion of the application to produce a recorded dataflow for the first randomly selected portion. In response to detecting the initiation of the application on the second computing device, a second instrumentation procedure is applied to a second randomly selected portion of the application to produce a recorded dataflow for the second randomly selected portion. An integrated dataflow solution is assembled for the application from the recorded dataflow for the first randomly selected portion and the recorded dataflow for the second randomly selected portion.