Dynamic Graph Performance Monitoring via Buffer Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Monitoring dynamic components in dataflow graph systems is challenging due to their dynamic nature, making it difficult to report performance characteristics and identify potential performance issues, which can lead to latency and inefficiencies.

Innovation Solution

Implementing a performance monitoring system that collects and aggregates metrics for dynamic micrographs within the dataflow graph, using a run-micrograph component to track processor time, elapsed time, and other metrics, and storing them in a data store to minimize latency, while allowing for parallel execution and user interface presentation of aggregated data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If dynamic components are monitored in real-time, then performance metrics can be collected and reported, but latency is introduced by the monitoring process

Engineering Contradiction:
Improveperformance metrics collectionVSAvoidlatency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

Performance metrics are collected and stored in buffers before being aggregated and reported. This preliminary collection approach allows the monitoring system to gather data without immediately processing or blocking the dataflow graph execution, thereby reducing latency while maintaining measurement precision.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Buffers act as intermediary storage between the dynamic components and the performance monitoring system. These buffers decouple the monitoring process from the dataflow execution, allowing metrics to be collected asynchronously without introducing latency to the critical data processing path.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If performance monitoring is implemented for dynamic micrographs, then performance characteristics can be reported, but the complexity of the system increases

Engineering Contradiction:
Improveperformance characteristics reportingVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The performance monitoring system uses a universal buffer structure that can handle multiple types of performance metrics from various dynamic micrographs. This unified approach consolidates monitoring functionality into a single framework, reducing overall system complexity compared to implementing separate monitoring mechanisms for each component type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system selectively collects and retains only the most relevant performance metrics in buffers, discarding redundant data. This selective approach maintains comprehensive performance characteristics reporting while minimizing the complexity associated with storing and processing all possible metric types.

Inventive Principle:
Principle #34Discarding and recovering

3Loss of time

If metrics are stored in a data store, then latency is minimized, but the quantity of data to be managed increases

Engineering Contradiction:
ImprovelatencyVSAvoiddata volume
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

Performance metrics are segmented into separate buffers corresponding to different dynamic micrographs and metric types. This segmentation allows the system to manage data in organized, manageable units rather than handling all metrics as a single large dataset, reducing the complexity of data management while maintaining low-latency access through localized buffer structures.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP2920686B1Dynamic graph performance monitoring
Publication Date: 2024.04.17 AB INITIO TECHNOLOGY LLC
  • EP2920686B1 patent drawingFigure 1
  • EP2920686B1 patent drawingFigure 2
  • EP2920686B1 patent drawingFigure 3

AI summary

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for dynamic graph performance monitoring. One of the methods includes receiving multiple units of work that each include one or more work elements. The method includes determining a characteristic of the first unit of work. The method includes identifying, by a component of the first dataflow graph, a second dataflow graph from multiple available dataflow graphs based on the determined characteristic, the multiple available dataflow graphs being stored in a data storage system. The method includes processing the first unit of work using the second dataflow graph. The method includes determining one or more performance metrics associated with the processing.