Dynamic Server Multiprogramming Level Adjustment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods for tuning server multiprogramming levels are inadequate, as they fail to dynamically adjust to varying workloads, leading to suboptimal performance due to either increased contention on shared resources or limited concurrency.

Innovation Solution

A method and system that dynamically tunes the multiprogramming level by monitoring throughput and adjusting the number of workers in a worker pool based on real-time data, using incremental adjustments and data analysis to optimize worker allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the multiprogramming level is set high to increase concurrency, then the server can handle more requests simultaneously, but resource contention increases causing thrashing

Engineering Contradiction:
Improveconcurrency levelVSAvoidresource contention
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The patent implements dynamic adjustment of the multiprogramming level based on real-time monitoring of throughput and resource usage. The system transitions from static MPL configuration to dynamic tuning, adjusting the number of workers in the worker pool according to actual system conditions and workload characteristics to optimize the balance between concurrency and resource contention.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces feedback mechanisms where the system continuously monitors throughput values and uses this information to adjust the multiprogramming level. The controller receives throughput values, compares them against thresholds, and modifies the worker pool size accordingly, creating a closed-loop control system that responds to actual system performance.

Inventive Principle:
Principle #23Feedback

2Object-generated harmful factors

If the multiprogramming level is set low to reduce resource contention, then thrashing is minimized, but the server's concurrency capability is limited

Engineering Contradiction:
Improveresource contentionVSAvoidconcurrency level
Core Design Contradiction:
Object-generated harmful factorsVSProductivity

Solution Approach 1:

The system dynamically adjusts the multiprogramming level based on real-time conditions, allowing it to operate at lower MPL when resource contention is high and at higher MPL when resources are abundant. This dynamic behavior enables the system to achieve both low contention and high concurrency capability as needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the multiprogramming level parameter dynamically based on monitored throughput values and system conditions. The controller modifies the number of workers in the pool by adjusting the MPL parameter, allowing the system to optimize performance by changing this critical parameter in response to actual workload and resource availability.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If traditional MPL tuning algorithms are used with small incremental steps, then the tuning process is conservative, but it takes a long time to reach optimal levels

Engineering Contradiction:
Improvetuning stabilityVSAvoidtuning time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements periodic monitoring and adjustment of the multiprogramming level. The system monitors throughput at regular intervals and performs adjustments based on these periodic measurements, allowing for systematic exploration of different MPL values while maintaining stability through structured, interval-based tuning rather than continuous random adjustment.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent replaces traditional mechanical incremental tuning approaches with a more sophisticated controller that uses throughput monitoring and data-driven decision-making. The controller analyzes throughput values and determines optimal MPL adjustments, substituting simple incremental mechanisms with an intelligent control system that can reach optimal levels more efficiently.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9152464B2Adjusting a server multiprogramming level based on collected throughput values
Publication Date: 2015.10.06 IANYWHERE SOLUTIONS INC
  • US9152464B2 patent drawing
  • US9152464B2 patent drawing
  • US9152464B2 patent drawing

AI summary

Methods, apparatus and computer program products for allocating a number of workers to a worker pool in a multiprogrammable computer are provided, to thereby tune server multiprogramming level. The method includes the steps of monitoring throughput in relation to a workload concurrency level and dynamically tuning a multiprogramming level based upon the monitoring. The dynamic tuning includes adjusting with a first adjustment for a first interval and with a second adjustment for a second interval, wherein the second adjustment utilizes data stored from the first adjustment.