Dynamic Computing Resource Allocation via Multi-Level Topology

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cloud computing resource allocation methods fail to efficiently manage computing resources, leading to fragmented allocations and difficulties in serving tenants requiring large continuous resources, as they only consider remaining credits without accounting for resource locations.

Innovation Solution

A dynamic resource management system that organizes free computing resources into groups based on a multi-level topology, allowing for the allocation of target resources by splitting redundant resource groups when matching groups are absent, ensuring proximity and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional resource allocation methods are used that only consider remaining credits, then resource allocation is simple, but resource fragmentation occurs and large continuous resources cannot be allocated

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidresource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments free computing resources into resource groups based on multi-level topology (host level, GPU level, memory level). This segmentation allows the system to manage resources in organized units rather than as individual scattered resources, enabling both efficient allocation and tracking of resource locations without excessive complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a spatial dimension to resource management by organizing resources according to multi-level topology structure. Instead of managing resources purely by quantity (1D), the system considers hierarchical relationships across multiple levels (hosts, devices, memory), enabling allocation decisions that account for physical proximity and topological relationships.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If resources are allocated without considering location, then allocation is fast, but resource fragmentation occurs and tenants requiring large continuous resources cannot be served

Engineering Contradiction:
Improveallocation speedVSAvoidresource utilization efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent performs preliminary organization of free resources into resource groups based on multi-level topology before allocation requests arrive. This pre-organization allows the system to quickly determine whether suitable contiguous resources exist without performing complex analysis during the allocation process itself, thus maintaining fast allocation speed while ensuring proper resource grouping.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If free resources are organized into groups based on multi-level topology, then resource allocation efficiency improves, but system complexity increases

Engineering Contradiction:
Improveresource allocation efficiencyVSAvoidresource organization complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by organizing resources according to their specific topological characteristics at different hierarchical levels. Each resource group is formed with specific properties (same host, same device, contiguous memory) that are locally optimized for that group's allocation needs, allowing efficient management without requiring uniform treatment of all resources.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20220229701A1Dynamic allocation of computing resources
Publication Date: 2022.07.21 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20220229701A1 patent drawing
  • US20220229701A1 patent drawing
  • US20220229701A1 patent drawing

AI summary

According to implementations of the subject matter, a solution of dynamic management of computing resource is provided. In the solution, a first request for using a target number of computing resource in a set of computing resources is received, wherein at least one free computing resource of the set of computing resources is organized into at least one free resource group. When it is determined that a free matching resource group is absent from the first resource group and a free redundant resource group is present in at least one free resource group, the target number of computing resources are allocated for the first request by splitting the free redundant resource group, wherein the number of resources in the free redundant resource group is greater than the target number. Therefore, the dynamic allocation of computing resources is enabled.