Dynamic Computing Resource Allocation Broker
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional enterprise computing environments are ill-equipped to dynamically adapt to changing demand levels for computing resources, leading to underutilization during periods of less than peak demand and inefficient resource allocation.
Innovation Solution
A method for dynamically and adaptively provisioning shared computing resources using a broker that optimally allocates computing engines among domains based on predicted demand and service policies, involving an optimization module that determines the expected number of engines needed, reallocates resources, and improves fitness values to ensure optimal resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If computing resources are manually assigned and provisioned to meet current demand levels, then service requirements are satisfied, but the system cannot adapt to changing demand levels over time
Solution Approach 1:
The patent implements dynamic resource allocation where the broker continuously monitors demand levels and automatically reconfigures computing resources in real-time. Application servers can be dynamically added, removed, or scaled based on current workload requirements, transforming the static manual allocation system into an adaptive dynamic system that responds to changing conditions without requiring complex manual intervention.
Solution Approach 2:
The system enables self-service through automated demand monitoring and resource provisioning. The broker automatically detects demand changes and provisions appropriate computing resources without human intervention. Application servers can autonomously register themselves with the broker and receive resources as needed, eliminating the need for complex manual assignment while maintaining service requirements.
2Reliability
If computing resources are assigned according to peak-level demands, then minimum service requirements are met, but resources are underutilized during periods of less than peak demand
Solution Approach 1:
The system uses dynamic resource provisioning that adjusts computing resource allocation based on real-time demand monitoring. During peak demand periods, resources are automatically increased to meet service requirements; during low-demand periods, resources are automatically reduced to eliminate underutilization. This dynamic adjustment maintains reliability when needed while optimizing resource usage at all times.
Solution Approach 2:
The broker monitors demand parameters and dynamically changes resource allocation parameters accordingly. When demand exceeds thresholds, the system increases the number of application servers or scaling factors; when demand decreases, it reduces allocation. This parameter-based dynamic control ensures service level guarantees during peak periods while preventing resource underutilization during off-peak periods.
3Speed
If more computing resources are provisioned to meet increasing demand, then service response times improve, but resource utilization becomes inefficient during lower demand periods
Solution Approach 1:
The system implements dynamic scaling of computing resources that automatically adjusts the number and capacity of application servers based on real-time demand monitoring. When response time requirements increase due to high demand, the broker dynamically provisions additional resources; when demand decreases, it deallocates excess resources. This maintains fast response times during peaks while optimizing utilization efficiency during lower-demand periods.
Data Source
AI summary
A shared computing infrastructure includes a plurality of computing engines, applications servers, and computing domains. A broker component executes a method for dynamically allocating the computing engines among the computing domains. The allocation method begins with the step of determining an expected number of computing engines to be allocated to each of the computing domains as a function of a predetermined service policy and a predicted demand for the domain While fewer than the expected number of computing engines has been allocated to each domain, the computing domains are sequentially selecting as a function of predetermined domain priorities. Unallocated computing engines are identified, and the unallocated computing engines are allocated to each selected computing domain according to predetermined selection rules for the domain. During an allocation improvement step, allocations among the computing domains are further adjusted to maximize a fitness statistic computed for the allocations.


