Dynamic Job Queue Length Adjustment in Grid Computing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of electronic tasks in computing grid systems requires efficient job distribution across geographically dispersed resources, but existing methods struggle to dynamically adjust to varying resource capacities and requirements, leading to inefficiencies in scheduling and resource utilization.

Innovation Solution

A method and system for job distribution within a grid environment that involves determining resource attributes, grouping execution hosts into mega-hosts, and dynamically calculating the pending job queue length based on resource capacity and requirements, using fair-share policies and resource matching to efficiently allocate jobs to execution clusters.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If jobs are distributed across multiple geographically dispersed execution clusters, then resource utilization and processing capacity are improved, but scheduling complexity and coordination overhead increase

Engineering Contradiction:
Improvejob processing capacityVSAvoidscheduling system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system segments the distributed execution clusters into logical groups with standardized interfaces. Each cluster is divided into independent execution hosts that can be managed individually, allowing the scheduling system to handle complexity at the cluster level rather than individual host level, thus managing scheduling complexity while maintaining high processing capacity across geographically dispersed locations

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary components including job submission queues, resource management agents, and scheduling algorithms that act as mediators between the central job distribution system and distributed execution clusters. These intermediaries abstract the complexity of coordinating multiple geographically dispersed clusters, enabling efficient job distribution while managing scheduling overhead through standardized communication protocols and intermediate processing layers

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the pending job queue length is increased to handle high throughput, then job processing volume is improved, but resource starvation and job waiting time increase

Engineering Contradiction:
Improvejob throughputVSAvoidjob waiting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements dynamic adjustment of pending job queue length based on real-time resource availability metrics. The system continuously monitors execution cluster capacity, current job processing status, and resource utilization, then dynamically adjusts the queue length parameter to optimize throughput while preventing excessive job accumulation. This dynamic approach allows the system to maintain high throughput during periods of available capacity while reducing waiting time when resources are constrained

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system incorporates feedback mechanisms where completion status and resource utilization information from execution clusters are fed back to the job distribution system. This feedback loop enables the system to adjust pending queue lengths based on actual processing performance and resource availability, balancing throughput optimization with minimization of job waiting time through continuous adaptation to system state

Inventive Principle:
Principle #23Feedback

3Productivity

If resource allocation is optimized for specific job types, then processing efficiency is improved, but system adaptability to varying job requirements decreases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent applies local quality by assigning specific resource configurations and optimization parameters to different job types based on their particular requirements. Each job category receives tailored resource allocation strategies optimized for its characteristics, while the overall system maintains adaptability through the ability to switch between different optimization modes. This localized optimization approach improves processing efficiency for each job type without sacrificing the system's overall versatility to handle varying requirements

Inventive Principle:
Principle #3Local quality

4Reliability

If fair-share policies are implemented to balance workload distribution, then resource fairness is improved, but scheduling decision complexity increases

Engineering Contradiction:
Improveresource access fairnessVSAvoidscheduling algorithm complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements fair-share policies by introducing and adjusting specific parameters such as weight factors, priority levels, and allocation ratios that control workload distribution across execution clusters. These parameter-based controls enable the system to achieve fair resource allocation through relatively simple adjustments rather than complex algorithmic decisions. The scheduling system manages fairness by modifying these parameters based on policy requirements while maintaining manageable scheduling decision complexity through parameterized control mechanisms

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11275609B2Job distribution within a grid environment
Publication Date: 2022.03.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11275609B2 patent drawing
  • US11275609B2 patent drawing
  • US11275609B2 patent drawing

AI summary

According to one aspect of the present disclosure, a technique for job distribution within a grid environment includes receiving jobs at a submission cluster for distribution of the jobs to one or more execution clusters where each of the execution clusters has one or more execution hosts and maintains a pending job queue. A resource capacity corresponding to each respective execution cluster is determined, and resource requirements for the jobs is determined. A length of the pending job queue indicating a quantity of pending jobs to maintain in the pending job queue for the respective execution cluster is dynamically calculated and periodically adjusted based on the resource capacity and the resource requirements of the respective execution clusters. The jobs are allocated to the respective execution clusters according to the length of the pending job queue of the respective execution clusters.