Concurrency Identification for Distributed Workflow Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed systems face performance bottlenecks due to limited concurrency levels at processing stages, often caused by resource constraints or locking mechanisms, which hinder efficient job request processing.

Innovation Solution

A method and system for identifying concurrency levels by analyzing measurement data from job requests, sorting timestamps, and determining maximum concurrency levels for each processing stage, allowing for resource classification and allocation to optimize resource utilization and alleviate bottlenecks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If locking mechanisms are used to ensure proper execution of job requests, then system reliability is improved, but concurrency level deteriorates

Engineering Contradiction:
Improveproper execution of job requestsVSAvoidconcurrency level
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system continuously monitors concurrency levels at each processing stage by collecting measurement data from job requests. When a bottleneck is detected (concurrency level < maximum job requests), the system provides feedback to dynamically adjust resource allocation, adding resources to bottleneck stages to maintain both reliability and productivity

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent implements dynamic resource allocation where resources are not statically assigned but dynamically adjusted based on real-time concurrency level measurements. The system continuously adapts resource distribution to match actual workload demands, allowing locking mechanisms to maintain reliability while minimizing their impact on concurrency

Inventive Principle:
Principle #15Dynamics

2Productivity

If resources are allocated to processing stages, then processing capacity is improved, but resource utilization efficiency deteriorates due to idle dedicated resources

Engineering Contradiction:
Improveprocessing capacityVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent classifies resources as either dedicated or shared based on concurrency analysis. Shared resources can serve multiple processing stages and are dynamically allocated to different stages based on real-time needs. This multi-functionality ensures that resources maintain high utilization efficiency while still providing sufficient processing capacity across all stages

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

Solution Approach 2:

The system changes the allocation parameters of resources dynamically based on measured concurrency levels. When a stage experiences a bottleneck, the system adjusts the number of resources allocated to that stage. This parameter adjustment allows the system to optimize processing capacity while minimizing idle resources, as resources are allocated only when and where needed

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8869148B2Concurrency identification for processing of multistage workflows
Publication Date: 2014.10.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8869148B2 patent drawing
  • US8869148B2 patent drawing
  • US8869148B2 patent drawing

AI summary

A system and method may be utilized to identify concurrency levels of processing stages in a distributed system, identify common resources and bottlenecks in the distributed system using the identified concurrency levels, and allocate resources in the distributed system using the identified concurrency levels.