Dynamic Resource Balancer for Data Center Workload Bottlenecks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In modern data centers, the varied workloads operating on shared pools of configurable computing resources often lead to resource overconsumption, resulting in bottlenecks for other workloads, particularly due to uneven allocation of cache space, memory bandwidth, and I/O bandwidth.
Innovation Solution
A dynamic resource balancer (DRB) is configured to manage and allocate resources on a fine-grained basis, adjusting allocations based on performance goals and relative priority of workloads, allowing for the coordination of resource sharing among virtualized elements and service chains to optimize performance and consolidation density.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If workloads are consolidated on a shared pool of configurable computing resources, then resource utilization efficiency is improved, but resource overconsumption by some workloads causes bottlenecks for other workloads
Solution Approach 1:
The patent applies local quality by allocating resources with different characteristics to different workloads based on their specific requirements. The resource allocation component divides the shared pool into multiple resource sets, where each set is configured with specific cache sizes, memory bandwidth allocations, and I/O bandwidth allocations tailored to the performance goals of individual workloads. This ensures that each workload receives appropriately optimized resources rather than a uniform allocation.
Solution Approach 2:
The patent implements parameter changes by dynamically adjusting resource allocation parameters (cache space, memory bandwidth, I/O bandwidth) based on workload performance monitoring. The system continuously monitors performance metrics and rebalances resource allocations to maintain optimal performance, changing the configuration parameters of resource sets in response to observed workload behavior and performance goals.
2Productivity
If resource allocation is increased for higher priority workloads, then performance of priority workloads is improved, but resources available for other workloads are reduced
Solution Approach 1:
The patent applies dynamics by implementing a dynamic resource rebalancing mechanism that continuously adjusts resource allocations based on current workload performance and priority levels. The resource allocation component can increase resources to high-priority workloads when they are not meeting performance goals, while simultaneously decreasing resources from lower-priority workloads that have excess capacity. This dynamic adjustment ensures optimal resource distribution across varying workload conditions.
Solution Approach 2:
The patent implements feedback through a closed-loop system where the performance monitoring component continuously observes workload performance metrics and feeds this information back to the resource allocation component. Based on this feedback and the defined performance goals, the system automatically adjusts resource allocations to maintain desired performance levels for priority workloads while preventing resource overconsumption that would harm other workloads.
3Measurement precision
If fine-grained resource allocation is implemented, then resource management precision is improved, but system complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the shared pool of configurable computing resources into multiple discrete resource sets, where each set is allocated to a specific workload. The resource allocation component creates distinct allocations for cache space, memory bandwidth, and I/O bandwidth for each workload, enabling precise control over resource distribution. This segmented approach allows fine-grained management while maintaining systematic organization.
Solution Approach 2:
The patent implements universality through the resource allocation component, which serves multiple functions: allocating cache space, allocating memory bandwidth, allocating I/O bandwidth, monitoring performance, and rebalancing resources. This multi-functional component manages all resource allocation tasks through a unified mechanism, reducing the need for separate specialized systems for each resource type and thereby managing complexity while achieving fine-grained control.
Data Source
AI summary
Examples may include techniques to coordinate the sharing of resources among virtual elements, including service chains, supported by a shared pool of configurable computing resources based on relative priority among the virtual element and service chains. Information including indications of the performance of the service chains and also the relative priority of the service chains may be received. The resource allocation of portions of the shared pool of configurable computing resources supporting the service chains can be adjusted based on the received performance and priority information.


