Dynamic Pipeline Parallelism Adjustment via ML Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies lack the ability to dynamically adjust parallelism in data processing pipelines to optimize performance and meet Quality of Service (QoS) requirements, as the number of parallel stages is typically predetermined and cannot be changed during execution, and machine learning has not been utilized to predict optimal parallelism configurations.

Innovation Solution

A method that uses machine learning to dynamically identify and modify parallelism in data processing pipelines by measuring actual execution times, spawning additional instances when necessary, and training decision tree models to predict behavior and adjust parallelism based on resource availability and performance metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the number of parallel stages is predetermined at the beginning of execution, then the system configuration is simple and stable, but the system cannot adapt to changing workload conditions and cannot optimize performance dynamically

Engineering Contradiction:
Improvedynamic adaptability to workloadVSAvoidsystem configuration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic parallelism by allowing the number of parallel pipeline stages to change during execution based on monitored performance metrics and workload conditions. The system transitions from a static predetermined configuration to a dynamic adaptive configuration where parallelism levels are adjusted in response to actual runtime conditions, resolving the contradiction between simplicity and adaptability.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms that monitor execution progress, performance metrics, and workload characteristics, then use this information to dynamically adjust the number of parallel stages. This closed-loop control enables the system to adapt to changing conditions while maintaining manageable complexity through automated decision-making based on observed performance.

Inventive Principle:
Principle #23Feedback

2Productivity

If additional parallel instances are spawned to improve throughput, then processing speed increases, but resource consumption increases and may impact Quality of Service

Engineering Contradiction:
ImprovethroughputVSAvoidresource consumption
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent dynamically changes the parameter of parallelism (number of instances) based on monitored performance metrics and resource availability. By adjusting this parameter in response to actual system state rather than using a fixed high-parallelism configuration, the system achieves high throughput when needed while conserving resources when workload demands are lower, thus resolving the contradiction between productivity and resource consumption.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If machine learning is used to predict optimal parallelism configuration, then performance optimization is improved, but system complexity and computational overhead increase

Engineering Contradiction:
Improveperformance optimizationVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies machine learning selectively to predict parallelism configuration only when beneficial, rather than using it for all system decisions. This partial application of ML provides performance optimization where needed while avoiding the full computational overhead and complexity of ML-based control for every aspect of system management, resolving the contradiction between optimization benefit and system complexity.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11461135B2Dynamically modifying the parallelism of a task in a pipeline
Publication Date: 2022.10.04 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11461135B2 patent drawing
  • US11461135B2 patent drawing
  • US11461135B2 patent drawing

AI summary

In an approach to dynamically identifying and modifying the parallelism of a particular task in a pipeline, the optimal execution time of each stage in a dynamic pipeline is calculated. The actual execution time of each stage in the dynamic pipeline is measured. Whether the actual time of completion of the data processing job will exceed a threshold is determined. If it is determined that the actual time of completion of the data processing job will exceed the threshold, then additional instances of the stages are created.