IP Library Granted Patent US 12675325
Granted Patent B2
US 12675325 · App. 17/659,604 · Granted Jul 7, 2026

Pipeline for resource aware workload placement using a Euclidean-based projection method

Inventors: Eduardo Vera Sousa (Rio de Janeiro, BR); Hugo de Oliveira Barbalho (Rio de Janeiro, BR)
Assignee: Dell Products L.P.
G06F9/50G06F2209/503
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12675325
App. No.
17/659,604
Filed
Apr 18, 2022
Granted
Jul 7, 2026
Kind
B2
Art Unit
2199
USPC
718/104
Abstract

One example method includes determining a respective metric value for each computing resource in a group of computing infrastructures, and each metric value comprises a length of a Euclidean projection of a required resources vector in a respective vector of available resources provided by one of the computing infrastructures. Next, a list is created that includes the computing infrastructures, and the list is sorted according to one of two criteria. A restricted candidates list is created that is a subset of the list, and one of the computing infrastructures is randomly selected from the restricted candidates list. Finally, the method includes executing, with whichever computing infrastructure was randomly selected, a workload associated with the required resources vector.

Claims (34)

1 . A method, comprising:

creating a list that includes a group of computing infrastructures;

selecting a computing infrastructure from the list;

determining a respective metric value for each computing resource in the selected computing infrastructure by projecting a required resources vector for a current workload in an available resources vector of the selected computing infrastructure to obtain a projected point in the available resources vector, wherein each coordinate of the projected point corresponds to a respective metric value for each computing resource, and wherein each metric value represents an availability percentage of a corresponding computing resource for performing the current workload;

creating a restricted candidates list, which was initially an empty list;

adding, to the restricted candidates list, the selected computing infrastructure, an annotation of the respective metric value, and an annotation of checking whether there is room for all resources required by the workload in the selected computing infrastructure, in a case where a length of the projected point of the selected computing infrastructure meets two criteria;

randomly selecting, from the restricted candidates list, one of the computing infrastructures; and

executing, with the randomly selected computing infrastructure, a next workload,

wherein the required resources vector is based on the current workload and a related service level agreement,

wherein a first one of the two criteria is to minimize a number of computing infrastructures operating in a space that includes the selected computing infrastructure, and a second of the two criteria is to maximize a workload performed in the selected computing infrastructure,

wherein the two criteria are both a function of a respective length of the projection of the required resources vector in the respective available resources vector of one of the computing infrastructures, and

wherein a length of the projection corresponding with the first one of the two criteria is longer than a length of the projection corresponding with the second one of the two criteria.

2 . The method as recited in claim 1 , wherein one or more of the computing infrastructures comprises a respective virtual machine.

3 . The method as recited in claim 1 , wherein the required resources vector identifies a type and amount of one or more resources needed to execute the current workload.

4 . The method as recited in claim 1 , wherein the randomly selected computing infrastructure is selected in accordance with the first one or the second one of the two criteria.

5 . The method as recited in claim 1 , wherein the computing infrastructures are included in a space that has ‘n’ resources available for execution of one or more workloads including the current workload, and ‘n’ is any integer equal to, or greater than, two.

6 . The method as recited in claim 1 , wherein a length of the projection of w (the required resources vector) in v (the available resources vector) is: ∥projvw∥=(w·v)/(∥v∥), where ∥v∥ represents an L2-norm of v.

7 . A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising:

creating a list that includes a group of computing infrastructures;

selecting a computing infrastructure from the list;

determining a respective metric value for each computing resource in the selected computing infrastructure by projecting a required resources vector for a current workload in an available resources vector of the selected computing infrastructure to obtain a projected point in the available resources vector, wherein each coordinate of the projected point corresponds to a respective metric value for each computing resource, and wherein each metric value represents an availability percentage of a corresponding computing resource for performing the current workload;

creating a restricted candidates list, which was initially an empty list;

adding, to the restricted candidates list, the selected computing infrastructure, an annotation of the respective metric value, and an annotation of checking whether there is room for all resources required by the workload in the selected computing infrastructure, in a case where a length of the projected point of the selected computing infrastructure meets two criteria;

randomly selecting, from the restricted candidates list, one of the computing infrastructures; and

executing, with the randomly selected computing infrastructure, a next workload,

wherein the required resources vector is based on the current workload and a related service level agreement,

wherein a first one of the two criteria is to minimize a number of computing infrastructures operating in a space that includes the selected computing infrastructure, and a second of the two criteria is to maximize a workload performed in the selected computing infrastructure,

wherein the two criteria are both a function of a respective length of the projection of the required resources vector in the respective available resources vector of one of the computing infrastructures, and

wherein a length of the projection corresponding with the first one of the two criteria is longer than a length of the projection corresponding with the second one of the two criteria.

8 . The non-transitory storage medium as recited in claim 7 , wherein one or more of the computing infrastructures comprises a respective virtual machine.

9 . The non-transitory storage medium as recited in claim 7 , wherein the required resources vector identifies a type and amount of one or more resources needed to execute the current workload.

10 . The non-transitory storage medium as recited in claim 7 , wherein the randomly selected computing infrastructure is selected in accordance with the first one or the ether second one of the two criteria.

11 . The non-transitory storage medium as recited in claim 7 , wherein the computing infrastructures are included in a space that has ‘n’ resources available for execution of one or more workloads including the current workload, and ‘n’ is any integer equal to, or greater than, two.

12 . The non-transitory storage medium as recited in claim 7 , wherein a length of the projection of w (the required resources vector) in v (the available resources vector) is: ∥projvw∥=(w·v)/(∥v∥), where ∥v∥ represents an L2-norm of v.