Batch Job Resource Allocation via Multi-Dimensional Statistical Representation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managing the efficient allocation of cloud resources to fulfill varying computational workloads in distributed systems is challenging, as existing technologies struggle to precisely match job resource requirements with available resources, often leading to over-allocation or under-allocation.

Innovation Solution

A batch job management service that implements event-driven schedulers and a resource controller to generate multi-dimensional statistical representations of job resource requirements, allowing for precise allocation decisions by separating resource allocation from job scheduling, and utilizing programmatic interfaces for clients to specify resource constraints and dependencies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If cloud resources are allocated to fulfill varying computational workloads, then resource capacity and flexibility are improved, but resource allocation precision deteriorates leading to over-allocation or under-allocation

Engineering Contradiction:
Improveresource capacityVSAvoidresource allocation precision
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent segments resource allocation into two independent components: a scheduler that manages job queues and resource requests, and a resource controller that handles actual resource allocation decisions. This segmentation allows each component to specialize in its function, improving overall allocation precision while maintaining flexibility. The scheduler breaks down workload management into individual job entities with specific resource requirements, enabling precise tracking and allocation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer between job submission and resource allocation through the batch job management service. This intermediary receives job requests, analyzes resource requirements, coordinates with both the scheduler and resource controller, and manages the allocation process. This intermediary ensures precise matching of job requirements with available resources while maintaining system flexibility and adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If resource allocation is integrated with job scheduling, then system simplicity is maintained, but allocation efficiency deteriorates due to inability to separately optimize resource management

Engineering Contradiction:
Improvesystem simplicityVSAvoidallocation efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system segments the traditionally integrated scheduling and allocation functions into separate modular components: a scheduler for job queue management and a resource controller for allocation decisions. This segmentation enables independent optimization of each function while maintaining clear interfaces between them, thus improving allocation efficiency without creating excessive complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The batch job management service acts as a universal coordinator that handles multiple functions: receiving job submissions, managing job queues, analyzing resource requirements, coordinating with schedulers, and controlling resource allocation. This multi-functional service simplifies the overall system architecture while enabling efficient separate optimization of scheduling and allocation processes.

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

3Measurement precision

If statistical representations of job requirements are generated, then allocation precision is improved, but computational overhead and processing time increase

Engineering Contradiction:
Improveallocation precisionVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The scheduler performs preliminary analysis of job requirements when jobs are submitted or queued, generating statistical representations of resource needs in advance. This preliminary action includes analyzing job characteristics, estimating resource requirements, and preparing allocation data before actual resource allocation is needed. By performing this analysis beforehand, the system achieves precise allocation without adding significant processing time during the critical allocation moment.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP3545416B1Resource management for batch jobs
Publication Date: 2023.08.02 AMAZON TECH INC
  • EP3545416B1 patent drawingFigure 1
  • EP3545416B1 patent drawingFigure 2
  • EP3545416B1 patent drawingFigure 3

AI summary

A scheduler of a batch job management service determines that a set of resources a client is insufficient to execute one or more jobs. The scheduler prepares a multi-dimensional statistical representation of resource requirements of the jobs, and transmits it to a resource controller. The resource controller uses the multi-dimensional representation and resource usage state information to make resource allocation change decisions.