Batch Resource Allocation Model for Cloud Infrastructure
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing resource allocation methods for intermittent workloads in cloud infrastructures are wasteful and inefficient, requiring continuous resource allocation and precise timing information, which is difficult to manage and leads to increased idleness and reduced utilization.
Innovation Solution
A per-user budget-based resource allocation model that uses a RESOURCE*TIME unit (e.g., CPU*HOURS, BYTES*HOUR) to manage resources, allowing for flexible allocation and prioritization, enabling efficient utilization by spreading job requests over time and ensuring Service Level Objectives (SLOs) are met without requiring deadline or load presence information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If continuous resource allocation is used for intermittent workloads, then resource availability is maintained, but resource idleness increases and utilization decreases
Solution Approach 1:
The patent implements periodic resource allocation where resources are allocated in batches corresponding to intermittent workload periods rather than continuously. The system identifies periods of workload presence and absence, allocating resources only during active periods, thereby eliminating resource idleness while maintaining availability when needed.
Solution Approach 2:
The resource allocation system dynamically adjusts resource allocation based on actual workload conditions. Instead of static continuous allocation, the system monitors workload patterns and adapts resource allocation in real-time, allocating resources during peak periods and releasing them during low-utilization periods to optimize both availability and utilization.
2Manufacturing precision
If precise timing information is required for job scheduling, then job execution accuracy is improved, but system complexity and management difficulty increase
Solution Approach 1:
The patent extracts and eliminates the requirement for precise timing information from the scheduling system. Instead of requiring exact start and end times for each job, the system uses broader time windows and batch-based allocation, removing the complexity associated with precise timing management while maintaining sufficient job execution accuracy.
Solution Approach 2:
The system changes the temporal parameters from precise point-in-time scheduling to interval-based batch scheduling. By transforming the scheduling granularity from fine-grained precise timing to coarser batch time windows, the system reduces management complexity while preserving the ability to meet job execution requirements.
3Measurement precision
If per-job deadline and load presence information is required, then job scheduling accuracy is improved, but information management overhead increases
Solution Approach 1:
The patent merges per-job deadline and load presence information into aggregate batch-level information. Instead of tracking individual job timing requirements separately, the system consolidates these requirements into batch time windows and resource allocation periods, reducing information management overhead while maintaining scheduling accuracy through aggregated planning.
Solution Approach 2:
The batch-based allocation framework serves multiple functions simultaneously: it manages resource allocation, determines scheduling windows, and tracks workload patterns without requiring separate mechanisms for each. This multi-functional approach reduces the overall information management overhead by using a unified batch-level information structure.
4Reliability
If resources are allocated to meet Service Level Objectives, then service quality is improved, but resource allocation flexibility decreases
Solution Approach 1:
The system dynamically adjusts resource allocation within batch time windows to meet Service Level Objectives while maintaining flexibility. Instead of rigid fixed allocations, the system adapts resource distribution based on actual workload demands within each batch period, ensuring SLO compliance while preserving allocation flexibility for varying conditions.
Data Source
AI summary
Systems and methods for providing a guaranteed batch pool are described, including receiving a job request for execution on the pool of resources; determining an amount of time to be utilized for executing the job request based on available resources from the pool of resources and historical resource usage of the pool of resources; determining a resource allocation from the pool of resources, wherein the resource allocation spreads the job request over the amount of time; determining that the job request is capable of being executed for the amount of time; and executing the job request over the amount of time, according to the resource allocation.


