Queuing Network Model for Resource Bottleneck Identification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional capacity planning and performance tuning tools are labor-intensive, require manual input, and fail to identify primary resource bottlenecks effectively, leading to inefficient performance improvements and zero-sum gains, as they rely on queuing models and simulations rather than real-time system snapshots.

Innovation Solution

A method and system that automatically detect primary resource bottlenecks in a computer system without user-defined parameters by generating queuing network models from snapshots, analyzing thread call stacks and lock graphs, and prioritizing tuning actions based on resource consumption relations, allowing for lightweight, non-intrusive performance tuning.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If conventional capacity planning techniques are used to predict performance and identify bottlenecks, then performance prediction capability is improved, but the process becomes extremely labor-intensive and time-consuming due to extensive manual data collection, modeling, and curve fitting

Engineering Contradiction:
Improveperformance prediction accuracyVSAvoidtime for data collection and model tuning
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system automatically collects performance data, builds queuing network models, and identifies bottlenecks without requiring manual user input for data collection or model parameter specification. The performance monitoring agent autonomously gathers metrics from system components and the model builder automatically constructs predictive models from this data.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary data collection and model building in advance, maintaining updated queuing network models that can quickly predict performance impacts of proposed changes without requiring extensive on-demand analysis. Historical performance data is collected and stored for future predictive queries.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If conventional performance tuning tools focus on hot calling contexts, then code optimization is improved, but the tools fail to identify actual system bottlenecks because they ignore resource saturation and system-wide interactions

Engineering Contradiction:
Improvecode optimization effectivenessVSAvoidbottleneck identification accuracy
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The queuing network model serves as an intermediary that connects code-level performance data with system-level resource constraints. The model translates hot spot identification into meaningful bottleneck analysis by incorporating resource saturation states and system-wide interactions, allowing the system to distinguish between code optimization opportunities and resource capacity limitations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system adds a system-level dimension to traditional code-level performance analysis by incorporating resource saturation metrics and queuing theory. This transforms the analysis from solely examining calling contexts to a multi-dimensional view that includes resource availability, thread waiting queues, and system-wide performance interactions.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Measurement precision

If conventional tools rely on queuing models and simulations for performance analysis, then theoretical performance prediction is improved, but the tools cannot provide lightweight, real-time performance problem identification from system snapshots

Engineering Contradiction:
Improveperformance prediction theoretical accuracyVSAvoidlightweight snapshot analysis capability
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system applies partial queuing model analysis focused specifically on identifying current bottlenecks from snapshots, rather than performing complete simulations for every analysis. The model builder constructs simplified models from snapshot data that provide sufficient accuracy for bottleneck identification without requiring exhaustive simulation of all system scenarios.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10402225B2Tuning resources based on queuing network model
Publication Date: 2019.09.03 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10402225B2 patent drawing
  • US10402225B2 patent drawing
  • US10402225B2 patent drawing

AI summary

A non-transitory, computer readable, storage medium storing a program of instructions executable by a machine to perform a method of gauging a benefit of a tuning action, the method includes acquiring a set of time series data sampled from an environment of an application, using a processor.