IP Library Granted Patent US 12,585,503
Granted Patent B2
US 12,585,503 · App. 18/098,164 · Granted Mar 24, 2026

Unified resource management architecture for workload schedulers

Inventors: Sahan Bamunavita Gamage (San Jose, CA); Prashanth Jonathan Victor (Sunnyvale, CA); Maarten Wiggers (San Francisco, CA)
Assignee: VMware LLC
G06F9/505G06F9/4881
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 12,585,503
App. No.
18/098,164
Granted
Mar 24, 2026
Kind
B2
Abstract

Various aspects are disclosed for unified resource management for multiple workload schedulers. A resource manager receives a candidate host request from a workload scheduler. The resource manager transmits a set of candidate host snapshots for candidate hosts that match the workload resource requirements. The resource manager receives a workload allocation request for a host and reserves hardware resources on the host that match the workload resource requirements. The resource manager provides, to the workload scheduler, an indication that the hardware resources are successfully reserved for execution of the workload.

Claims (49)

1 . A non-transitory computer-readable medium, comprising executable instructions, wherein the instructions, when executed by at least one processor, cause at least one computing device to at least:

receive, by a resource manager from a workload scheduler, a candidate host request comprising workload resource requirements for a workload;

transmit, from the resource manager to the workload scheduler, a set of candidate host snapshots for a plurality of candidate hosts identified based at least in part on the workload resource requirements;

receive, by the resource manager from the workload scheduler, a workload allocation request that specifies a host selected by the workload scheduler for the workload;

lock, by the resource manager, the host to prevent allocation of additional workloads to the host by other workload schedulers; and

transmit, from the resource manager to the workload scheduler, an indication that the hardware resources are successfully reserved for execution of the workload.

2 . The non-transitory computer-readable medium of claim 1 , wherein the workload scheduler is one of a plurality of workload schedulers that coordinate workload scheduling in a cluster using the resource manager for the cluster.

3 . The non-transitory computer-readable medium of claim 2 , the instructions, when executed by at least one processor, cause at least one computing device to at least:

monitor, by the resource manager, at least one host parameter associated with host reliability or host resource usage for a plurality of hosts in a cluster;

identify, by the resource manager, that the at least one host parameter for a particular host triggers at least one threshold; and

transmit, by the resource manager to a respective one of a plurality of workload schedulers that are identified to have placed at least one workload scheduled on the particular host, a command to perform a workload action, wherein the workload action comprises a workload evacuation or a workload reevaluation.

4 . The non-transitory computer-readable medium of claim 2 , wherein the plurality of workload schedulers schedule a plurality of different workload types, and a respective one of the plurality of workload schedulers uses a different workload-type-specific placement algorithm.

5 . The non-transitory computer-readable medium of claim 1 , wherein the workload scheduler comprises at least one of: a container scheduler, a virtual machine scheduler, a failover capacity scheduler, a cluster-level service scheduler, a host-level service scheduler, and an accelerator scheduler.

6 . The non-transitory computer-readable medium of claim 1 , wherein the instructions, when executed by at least one processor, cause at least one computing device to at least:

receive, by the resource manager from the workload scheduler, an acquire host request that specifies the host.

7 . The non-transitory computer-readable medium of claim 6 , wherein the resource manager locks the host based at least in part on the acquire host request.

8 . A method performed by instructions executed by at least one processor of at least one computing device, the instructions comprising:

receiving, by a resource manager from a workload scheduler, a candidate host request comprising workload resource requirements for a workload;

transmitting, from the resource manager to the workload scheduler, a set of candidate host snapshots for a plurality of candidate hosts identified based at least in part on the workload resource requirements;

receiving, by the resource manager from the workload scheduler, a workload allocation request that specifies a host selected by the workload scheduler for the workload;

locking, by the resource manager, the host to prevent allocation of additional workloads to the host by other workload schedulers; and

transmitting, from the resource manager to the workload scheduler, an indication that the hardware resources are successfully reserved for execution of the workload.

9 . The method of claim 8 , wherein the workload scheduler is one of a plurality of workload schedulers that coordinate workload scheduling in a cluster using the resource manager for the cluster.

10 . The method of claim 9 , further comprising:

monitoring, by the resource manager, at least one host parameter associated with host reliability or host resource usage for a plurality of hosts in a cluster;

identifying, by the resource manager, that the at least one host parameter for a particular host triggers at least one threshold; and

transmitting, by the resource manager to a respective one of a plurality of workload schedulers that are identified to have placed at least one workload scheduled on the particular host, a command to perform a workload action, wherein the workload action comprises a workload evacuation or a workload reevaluation.

11 . The method of claim 9 , wherein the plurality of workload schedulers schedule a plurality of different workload types, and a respective one of the plurality of workload schedulers uses a different workload-type-specific placement algorithm.

12 . The method of claim 8 , wherein the workload scheduler comprises at least one of: a container scheduler, a virtual machine scheduler, a failover capacity scheduler, a cluster-level service scheduler, a host-level service scheduler, and an accelerator scheduler.

13 . The method of claim 8 , further comprising:

receiving, by the resource manager from the workload scheduler, an acquire host request that specifies the host.

14 . The method of claim 13 , wherein the resource manager locks the host based at least in part on the acquire host request.

15 . A system comprising:

at least one computing device comprising at least one processor;

at least one memory comprising executable instructions, wherein the instructions, when executed by the at least one processor, cause the at least one computing device to at least:

receive, by a resource manager from a workload scheduler, a candidate host request comprising workload resource requirements for a workload;

transmit, from the resource manager to the workload scheduler, a set of candidate host snapshots for a plurality of candidate hosts identified based at least in part on the workload resource requirements;

receive, by the resource manager from the workload scheduler, a workload allocation request that specifies a host selected by the workload scheduler for the workload;

lock, by the resource manager, the host to prevent allocation of additional workloads to the host by other workload schedulers; and

transmit, from the resource manager to the workload scheduler, an indication that the hardware resources are successfully reserved for execution of the workload.

16 . The system of claim 15 , wherein the workload scheduler is one of a plurality of workload schedulers that coordinate workload scheduling in a cluster using the resource manager for the cluster.

17 . The system of claim 16 , wherein the instructions, when executed by at least one processor, cause at least one computing device to at least:

monitor, by the resource manager, at least one host parameter associated with host reliability or host resource usage for a plurality of hosts in a cluster;

identify, by the resource manager, that the at least one host parameter for a particular host triggers at least one threshold; and

transmit, by the resource manager to a respective one of a plurality of workload schedulers that are identified to have placed at least one workload scheduled on the particular host, a command to perform a workload action, wherein the workload action comprises a workload evacuation or a workload reevaluation.

18 . The system of claim 16 , wherein the plurality of workload schedulers schedule a plurality of different workload types, and a respective one of the plurality of workload schedulers uses a different workload-type-specific placement algorithm.

19 . The system of claim 16 , wherein the workload scheduler comprises at least one of: a container scheduler, a virtual machine scheduler, a failover capacity scheduler, a cluster-level service scheduler, a host-level service scheduler, and an accelerator scheduler.

20 . The system of claim 15 , wherein the instructions, when executed by at least one processor, cause at least one computing device to at least:

receive, by the resource manager from the workload scheduler, an acquire host request that specifies the host, wherein the resource manager locks the host based at least in part on the acquire host request.

Assignments (2)
CHANGE OF NAME Recorded May 8, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067355/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 20, 2023
From: GAMAGE, SAHAN BAMUNAVITA; VICTOR, PRASHANTH JONATHAN; WIGGERS, MAARTEN
To: VMWARE, INC.
Reel/Frame 062431/0248 →
Continuity (1)
Related Publication 20240241759A1 · Jul 18, 2024
References Cited (5)
US 10684893B2 · Siddappa · 2020 [cited by examiner]
US 20220035662A1 · Wiggers et al. · 2022 [cited by applicant]
Extended European Search Report, European Application No. 24152436.2 dated Mar. 4, 2024, 11 pages. [cited by applicant]
Hindman, Benjamin et al: “Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center”, Apr. 1, 2011 (Apr. 1, 2011), pp. 1-14, XP093132656, Retrieved from the Internet: www.usenix.org/legacy/events/nsdi11/tec… [cited by applicant]
Hindman, Benjamin et al: “Mesos, A platform for fine-grained resource sharing in the data center”, Apr. 1, 2011 (Apr. 1, 2011), pp. 1-32, XP093132682, Retrieved from the Internet: www.usenix.org/legacy/events/nsdi11/tec… [cited by applicant]