Resource Apportionment in Cloud Clusters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-tenant computer clusters, existing methods for managing consumable resources lead to an unequal distribution of computing resources among customers, resulting in less equitable and uncontrollable service provisioning due to unpredictable customer requests and varying information handling needs.
Innovation Solution
A method that calculates ideal resource apportionments for each customer's reservations and runs an apportionment process to allocate resources, with a subsequent optimization to increase resource utilization for needy customers, ensuring fair and controlled distribution of consumable resources across the cluster.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If FIFO queue servicing is used to manage customer requests, then request processing order is simple and predictable, but resource distribution becomes unequal and uncontrollable
Solution Approach 1:
The patent segments the resource allocation process into multiple independent resource types (CPU time, memory, storage, network bandwidth) and applies different allocation strategies to each. This allows simple FIFO processing for some resources while implementing controlled sharing and optimization for others, resolving the contradiction between processing simplicity and distribution fairness.
Solution Approach 2:
The patent introduces dynamic resource allocation that adapts to changing customer needs and system conditions. The system continuously monitors resource usage patterns and adjusts allocations in real-time, transitioning from static FIFO processing to dynamic optimization that maintains fairness while improving resource distribution control.
2Device complexity
If sequential request servicing is implemented, then system processing is straightforward, but customers with more requests receive disproportionately more resources
Solution Approach 1:
The patent changes the allocation parameters from simple request count to multiple dimensional metrics including request priority, resource type, customer historical usage patterns, and real-time system state. This transforms the allocation decision from a single-parameter sequential process to a multi-parameter optimized distribution that prevents resource hoarding by customers with more requests.
Solution Approach 2:
The patent implements feedback mechanisms that monitor resource consumption patterns and adjust future allocations accordingly. By continuously measuring actual resource usage versus allocated resources, the system can correct imbalances where customers with more requests receive disproportionate resources, ensuring more equitable distribution over time.
3Reliability
If ideal resource apportionment is calculated for each reservation, then fair distribution is achieved, but computational overhead increases
Solution Approach 1:
The patent applies partial optimization by calculating ideal resource apportionments selectively rather than exhaustively for all reservations simultaneously. The system prioritizes calculations for high-priority resource types and critical customer segments, achieving sufficient fairness for most cases while reducing overall computational overhead through targeted rather than universal optimization.
Solution Approach 2:
The patent performs preliminary calculations of ideal resource apportionments during system initialization and uses these pre-computed values as guidelines for real-time allocation decisions. This preliminary action reduces the computational burden during actual resource distribution while maintaining fairness, as the system only needs to adjust from the ideal apportionment rather than calculate from scratch.
Data Source
AI summary
In one embodiment, a method includes calculating ideal resource apportionments from a current set of consumable resources for each of a plurality of reservations. Each reservation corresponds to one of a plurality of customers. The method further includes running an apportionment process relative to the plurality of reservations. The running includes attempting to apportion to each reservation its ideal resource apportionment. The running yields an actual resource apportionment for each reservation. Each customer's actual resource apportionment comprises a sum of the actual resource apportionments for the customer's reservations. In addition, the method includes, responsive to an indication of unapportioned resources following the running, performing a first optimization to increase resource utilization by at least one needy customer.


