IP Library Granted Patent US 11,652,706
Granted Patent B2
US 11,652,706 · App. 17/171,152 · Granted May 16, 2023

System and method for providing dynamic provisioning within a compute environment

Inventor: David B. Jackson (Spanish Fork, UT)
Assignee: III Holdings 12, LLC
H04L41/50G06F9/4881G06F9/50G06F9/5005G06F9/5011G06F9/5022G06F9/5027G06F9/5072H04L41/00G06F2209/504G06F2209/5014Y02D10/00
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 11,652,706
App. No.
17/171,152
Granted
May 16, 2023
Kind
B2
Abstract

The disclosure relates to systems, methods and computer-readable media for dynamically provisioning resources within a compute environment. The method aspect of the disclosure comprises A method of dynamically provisioning resources within a compute environment, the method comprises analyzing a queue of jobs to determine an availability of compute resources for each job, determining an availability of a scheduler of the compute environment to satisfy all service level agreements (SLAs) and target service levels within a current configuration of the compute resources, determining possible resource provisioning changes to improve SLA fulfillment, determining a cost of provisioning; and if provisioning changes improve overall SLA delivery, then re-provisioning at least one compute resource.

Claims (37)

1. A method comprising:

determining that using a first set of compute resources of a plurality of compute resources in a compute environment to process a workload will satisfy a service level specified in a service level agreement associated with the workload;

even though the compute environment is able to satisfy the service level specified in the service level agreement, determining that making a scheduling change for another workload in the compute environment will make available at least one compute resource of the plurality of compute resources not in the first set of compute resources and that processing the workload using the at least one compute resource will provide a better service level than the service level specified in the service level agreement;

determining a cost for making the scheduling change; and

in response to determining that the cost is less than an increased efficiency associated with utilization of the plurality of compute resources caused by the scheduling change:

making available the at least one compute resource not in the first set of compute resources; and

processing the workload using the at least one compute resource.

2. The method of claim 1 , further comprising making the at least one compute resource available irrespective of a priority level of the workload.

3. The method of claim 1 , further comprising determining that making the at least one compute resource available will provide the better service level based on the cost.

4. The method of claim 1 , further comprising provisioning the at least one compute resource for the workload.

5. The method of claim 1 , further comprising determining an availability of the first set of compute resources in terms of one or more of: a required operating system, hardware architecture, network adapters, real memory, virtual memory, internal and external disk storage, a software application, a resource state, a reservation, and a political policy.

6. The method of claim 1 , further comprising determining a time frame in which the workload must complete to fulfill the service level.

7. A non-transitory computer-storage medium having stored therein instructions which, when executed by a processor, cause the processor to perform operations comprising:

determining that using a first set of compute resources of a plurality of compute resources in a compute environment to process a workload will satisfy a service level specified in a service level agreement associated with the workload;

even though the compute environment is able to satisfy the service level specified in the service level agreement, determining that making a scheduling change for another workload in the compute environment will make available at least one compute resource of the plurality of compute resources not in the first set of compute resources and that processing the workload using the at least one compute resource will provide a better service level than the service level specified in the service level agreement;

determining a cost for making the scheduling change; and

in response to determining that the cost is less than an increased efficiency associated with utilization of the plurality of compute resources caused by the scheduling change:

making available the at least one compute resource not in the first set of compute resources; and

processing the workload using the at least one compute resource.

8. The non-transitory computer-storage medium of claim 7 , further comprising instructions which, when executed by the processor, cause the processor to make the at least one compute resource available irrespective of a priority level of the workload.

9. The non-transitory computer-storage medium of claim 7 , further comprising instructions which, when executed by the processor, cause the processor to determine that making the at least one compute resource available will provide the better service level based on the cost.

10. The non-transitory computer-storage medium of claim 7 , further comprising instructions which, when executed by the processor, cause the processor to provision the at least one compute resource for the workload.

11. The non-transitory computer-storage medium of claim 7 , further comprising instructions which, when executed by the processor, cause the processor to determine an availability of the first set of compute resources in terms of one or more of: a required operating system, hardware architecture, network adapters, real memory, virtual memory, internal and external disk storage, a software application, a resource state, a reservation, and a political policy.

12. The non-transitory computer-storage medium of claim 7 , further comprising instructions which, when executed by the processor, cause the processor to determine a time frame in which the workload must complete to fulfill the service level.

13. A system comprising:

a processor; and

a computer-readable storage medium having stored therein instructions which, when executed by the processor, cause the processor to perform operations comprising:

determining that using a first set of compute resources of a plurality of compute resources in a compute environment to process a workload will satisfy a service level specified in a service level agreement associated with the workload;

even though the compute environment is able to satisfy the service level specified in the service level agreement, determining that making a scheduling change for another workload in the compute environment will make available at least one compute resource of the plurality of compute resources not in the first set of compute resources and that processing the workload using the at least one compute resource will provide a better service level than the service level specified in the service level agreement;

determining a cost for making the scheduling change; and

in response to determining that the cost is less than an increased efficiency associated with utilization of the plurality of compute resources caused by the scheduling change:

making available the at least one compute resource not in the first set of compute resources; and

processing the workload using the at least one compute resource.

14. The system of claim 13 , further comprising instructions which, when executed by the processor, cause the processor to make the at least one compute resource available irrespective of a priority level of the workload.

15. The system of claim 13 , further comprising instructions which, when executed by the processor, cause the processor to determine that making the at least one compute resource available will provide the better service level based on the cost.

16. The system of claim 13 , further comprising instructions which, when executed by the processor, cause the processor to provision the at least one compute resource for the workload.

17. The system of claim 13 , further comprising instructions which, when executed by the processor, cause the processor to determine a time frame in which the workload must complete to fulfill the service level.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2021
From: JACKSON, DAVID B.
To: CLUSTER RESOURCES, INC.
Reel/Frame 057810/0827 →
CONFIRMATORY ASSIGNMENT Recorded Oct 14, 2021
From: JACKSON, DAVID B.
To: CLUSTER RESOURCES, INC.
Reel/Frame 057811/0365 →
CHANGE OF NAME Recorded Oct 14, 2021
From: CLUSTER RESOURCES, INC.
To: ADAPTIVE COMPUTING ENTERPRISES, INC.
Reel/Frame 057813/0140 →
CHANGE OF NAME Recorded Oct 14, 2021
From: CLUSTER RESOURCES, INC.
To: ADAPTIVE COMPUTING ENTERPRISES, INC.
Reel/Frame 057813/0200 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2021
From: ADAPTIVE COMPUTING ENTERPRISES, INC.
To: III HOLDINGS 12, LLC
Reel/Frame 057813/0213 →
Continuity (6)
Continuation 15345017 · Nov 7, 2016
Continuation 14744746 · Jun 19, 2015
Continuation 13269893 · Oct 10, 2011
Continuation 11155091 · Jun 17, 2005
Provisional Application 60581257 · Jun 18, 2004
Related Publication 20210250249A1 · Aug 12, 2021