IP Library › Granted Patent US 10,469,570
Granted Patent B2
US 10,469,570 · App. 14/998,308 · Granted Nov 5, 2019

Technologies for execution acceleration in heterogeneous environments

Inventors: Victor Bayon-Molino (Maynooth, IE); Giovani Estrada (Dublin, IE)
Assignee: Intel Corporation
H04L67/1008H04L41/0806
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 10,469,570
App. No.
14/998,308
Granted
Nov 5, 2019
Kind
B2
Abstract

Technologies for provisioning jobs to servers at a datacenter include a compute device to identify a class of each of a plurality of available servers in the datacenter, wherein the class is indicative of a set of hardware included on the corresponding server. The compute device selects a workload that includes a plurality of jobs to provision to a subset of the available servers and determines a provisioning configuration for the workload from a set of prospective configurations as a function of a rack utilization of each prospective configuration, the classes utilized by each prospective configuration, and a number of racks utilized by each prospective configuration. The provisioning configuration identifies a subset of the available servers to which to provision the jobs of the workload.

Claims (35)

1. A compute device for provisioning jobs to servers at a datacenter, the compute device comprising:

a server identification module to identify a class of each of a plurality of available servers in the datacenter, wherein the class is indicative of a set of hardware included on the corresponding server; and

a job allocation module to (i) select a workload that includes a plurality of jobs to provision to a subset of the available servers and (ii) determine a provisioning configuration for the workload from a set of prospective configurations as a function of a rack utilization of each prospective configuration, the classes utilized by each prospective configuration, and a number of racks utilized by each prospective configuration, wherein the provisioning configuration identifies a subset of the available servers to which to provision the jobs of the workload and wherein to determine the provisioning configuration comprises to determine a provisioning score for each prospective configuration according to:

s i =(1/ r )Σ( n/a ),

wherein s is the provisioning score, i is an index that identifies the corresponding prospective configuration, r is a number of racks involved in the corresponding prospective configuration, n is a number of servers involved in the corresponding prospective configuration, and a is a number of available servers.

2. The compute device of claim 1 , further comprising a provisioning module to provision the jobs of the workload to the identified subset of the available servers.

3. The compute device of claim 1 , wherein the compute device comprises an orchestrator compute device of the datacenter.

4. The compute device of claim 1 , where to identify the class of each of the plurality of available servers comprises to organize each server rack associated with the plurality of available servers based on the class of the available servers.

5. The compute device of claim 1 , wherein to determine the provisioning configuration comprises to select the prospective configuration having a greatest provisioning score as the provisioning configuration.

6. The compute device of claim 5 , wherein the job allocation module is further to select a prospective configuration as the provisioning configuration based on a provisioning policy of the compute device in response to a determination that multiple prospective configurations have the greatest provisioning score.

7. The compute device of claim 6 , wherein the provisioning policy indicates to select the prospective configuration that utilizes a lesser number of racks in response to a determination that multiple prospective configurations have a matching provisioning score.

8. The compute device of claim 6 , wherein the provisioning policy indicates to select the prospective configuration that has a greater rack utilization in response to a determination that the multiple prospective configurations have a matching provisioning score.

9. The compute device of claim 1 , wherein to determine the provisioning configuration comprises to determine whether each of the jobs in the workload can be provisioned to available servers having a same class.

10. The compute device of claim 9 , wherein to determine the provisioning configuration comprises to select a prospective configuration associated with a less energy efficient class in response to a determination that each of the jobs in the workload can be provisioned to available servers having the same class for multiple different classes.

11. One or more machine-readable storage media comprising a plurality of instructions stored thereon that, in response to execution by a compute device, cause the compute device to:

identify a class of each of a plurality of available servers in the datacenter, wherein the class is indicative of a set of hardware included on the corresponding server;

select a workload that includes a plurality of jobs to provision to a subset of the available servers; and

determine a provisioning configuration for the workload from a set of prospective configurations as a function of a rack utilization of each prospective configuration, the classes utilized by each prospective configuration, and a number of racks utilized by each prospective configuration, wherein the provisioning configuration identifies a subset of the available servers to which to provision the jobs of the workload and wherein to determine the provisioning configuration comprises to determine a provisioning score according to

s i =(1/ r )Σ( n/a ),

wherein s is the provisioning score, i is an index that identifies the corresponding prospective configuration, r is the number of racks involved in the corresponding prospective configuration, n is the number of servers involved in the corresponding prospective configuration, and a is the number of available servers.

12. The one or more machine-readable storage media of claim 11 , wherein the plurality of instructions further cause the compute device to provision the jobs of the workload to the identified subset of the available servers.

13. The one or more machine-readable storage media of claim 11 , wherein the compute device comprises an orchestrator compute device of the datacenter.

14. The one or more machine-readable storage media of claim 11 , wherein to determine the provisioning configuration comprises to select the prospective configuration having a greatest provisioning score as the provisioning configuration.

15. The one or more machine-readable storage media of claim 14 , wherein the plurality of instructions further cause the compute device to select a prospective configuration as the provisioning configuration based on a provisioning policy of the compute device in response to a determination that multiple prospective configurations have the greatest provisioning score.

16. The one or more machine-readable storage media of claim 15 , wherein the provisioning policy indicates to select the prospective configuration that utilizes a lesser number of racks in response to a determination that multiple prospective configurations have a matching provisioning score.

17. The one or more machine-readable storage media of claim 15 , wherein the provisioning policy indicates to select the prospective configuration that has a greater rack utilization in response to a determination that the multiple prospective configurations have a matching provisioning score.

18. A method for provisioning jobs to servers at a datacenter, the method comprising:

identifying, by a compute device, a class of each of a plurality of available servers in the datacenter, wherein the class is indicative of a set of hardware included on the corresponding server;

selecting, by the compute device, a workload that includes a plurality of jobs to provision to a subset of the available servers; and

determining, by the compute device, a provisioning configuration for the workload from a set of prospective configurations as a function of a rack utilization of each prospective configuration, the classes utilized by each prospective configuration, and a number of racks utilized by each prospective configuration, wherein the provisioning configuration identifies a subset of the available servers to which to provision the jobs of the workload and wherein determining the provisioning configuration comprises determining a provisioning score for each prospective configuration according to

s i =(1/ r )Σ( n/a ),

wherein s is the provisioning score, i is an index that identifies the corresponding prospective configuration, r is the number of racks involved in the corresponding prospective configuration, n is the number of servers involved in the corresponding prospective configuration, and a is the number of available servers.

19. The method of claim 18 , wherein determining the provisioning configuration comprises selecting the prospective configuration having a greatest provisioning score as the provisioning configuration.

20. The method of claim 18 , wherein determining the provisioning configuration comprises determining whether each of the jobs in the workload can be provisioned to available servers having a same class.

21. The method of claim 20 , wherein determining the provisioning configuration comprises selecting a prospective configuration associated with a less energy efficient class in response to a determination that each of the jobs in the workload can be provisioned to available servers having the same class for multiple different classes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2016
From: BAYON-MOLINO, VICTOR; ESTRADA, GIOVANI
To: INTEL CORPORATION
Reel/Frame 037677/0379 →
Continuity (1)
Related Publication 20170187791A1 · Jun 29, 2017