Intelligent Resource Allocation via Topology Graphs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for scheduling resources in parallel computing systems lack the ability to automatically and intelligently select the optimal resources for multiple jobs based on complex criteria, often resulting in sub-optimal resource allocation, especially in systems with complex variations in resources.
Innovation Solution
An intelligent scheduling system that optimizes resource allocation for jobs by considering the topology of computing resources and quality of service (QoS) levels, using configuration information to create a graph representation of resource interconnectivity, and selecting resources that meet job requirements and QoS levels through algorithms like simplex minimization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If simple best-fit algorithms are used for resource allocation, then ease of operation is improved, but resource allocation optimality deteriorates
Solution Approach 1:
The patent transforms the resource allocation problem from a simple best-fit approach to an optimized solution by changing the parameters considered: incorporating topology metrics (distance, bandwidth, latency), QoS levels, and job performance requirements. This multi-parameter optimization resolves the contradiction by making the allocation process more efficient without sacrificing simplicity, as the system automatically evaluates these parameters using graph-based algorithms.
Solution Approach 2:
The patent introduces an intermediary optimization layer between the simple best-fit algorithm and the complex multi-criteria requirements. This intermediary uses graph representations and automated algorithms to evaluate topology, QoS, and job requirements, providing an optimal allocation solution without requiring direct complex intervention, thus resolving the contradiction between simplicity and efficiency.
2Productivity
If complex criteria are used for resource selection, then resource allocation optimality is improved, but device complexity increases
Solution Approach 1:
The patent segments the complex resource allocation problem into manageable components: creating a graph representation of the computing system, separating topology metrics from QoS levels and job requirements. This segmentation allows the system to handle complex criteria through structured, modular processing, reducing the perceived complexity while maintaining allocation optimality.
Solution Approach 2:
The patent transforms the resource allocation problem from traditional one-dimensional best-fit to a multi-dimensional optimization by incorporating topology (spatial relationships), QoS levels (service quality dimensions), and job performance requirements. This dimensional expansion enables optimal allocation while using standardized graph algorithms to manage the increased complexity.
3Productivity
If resource allocation considers topology and QoS levels, then resource utilization is improved, but computational overhead increases
Solution Approach 1:
The patent performs preliminary actions by pre-establishing the graph representation of the computing system and pre-calculating topology metrics. This preparation work is done before actual resource allocation decisions, allowing the system to quickly evaluate QoS levels and job requirements against pre-computed data, thus improving resource utilization while minimizing the time required for allocation decisions.
Data Source
AI summary
Systems and methods for allocating computing resources within a distributed computing system are disclosed. Computing resources such as CPUs, GPUs, network cards, and memory are allocated to jobs submitted to the system by a scheduler. System configuration and interconnectivity information is gathered by a mapper and used to create a graph. Resource allocation is optimized based on one or more quality of service (QoS) levels determined for the job. Job performance characterization, affinity models, computer resource power consumption, and policies may also be used to optimize the allocation of computing resources.


