System and method of co-allocating a reservation spanning different compute resources types
First Claim
1. A method of co-allocating resources within a compute environment, the method comprising:
- receiving a first request for a reservation for a first type of resource in a compute environment comprising a plurality of networked computing devices;
analyzing first constraints and service level agreement guarantees associated with the first request, the first constraints and guarantees related to use of the compute environment;
identifying a first group of resources that meet the first request;
receiving a second request for a reservation for a second type of resource in the compute environment;
analyzing second constraints and service level agreement guarantees associated with the second request, the second constraints and service level agreement guarantees related to use of the compute environment, wherein the first type of resource and second type of resource span at least one computing device of the plurality of networked computing devices, wherein each computing device of the plurality of networked computing devices has a homogeneous processor architecture;
identifying a second group of resources that meet the second request; and
generating a co-allocation map between the first group of resources and the second group of resources, wherein the co-allocation map comprises at least one of (1) intersecting time frames in which both the first request and the second request may be simultaneously satisfied, and (2) all time frames where available resources exist that satisfy the first request and the second request.
8 Assignments
0 Petitions
Accused Products
Abstract
A system and method of co-allocating resources within a compute environment are disclosed. The method embodiment of the invention comprises receiving a request for a reservation for a first type of resource, analyzing constraints and guarantees associated with the first type of resource, identifying a first group of resources that meet the request for the first type of resource and storing in a first list, receiving a request for a reservation for a second type of resource, analyzing constraints and guarantees associated with the second type of resource, identifying a second group of resources that meet the request for the second type of resource and storing in a second list, calculating a co-allocation parameter between the first group of resources and the second group of resources and reserving resources according to the calculated co-allocation parameter of the first group of resources and the second group of resources. The request may also request exclusivity of the reservation.
129 Citations
37 Claims
-
1. A method of co-allocating resources within a compute environment, the method comprising:
-
receiving a first request for a reservation for a first type of resource in a compute environment comprising a plurality of networked computing devices; analyzing first constraints and service level agreement guarantees associated with the first request, the first constraints and guarantees related to use of the compute environment; identifying a first group of resources that meet the first request; receiving a second request for a reservation for a second type of resource in the compute environment; analyzing second constraints and service level agreement guarantees associated with the second request, the second constraints and service level agreement guarantees related to use of the compute environment, wherein the first type of resource and second type of resource span at least one computing device of the plurality of networked computing devices, wherein each computing device of the plurality of networked computing devices has a homogeneous processor architecture; identifying a second group of resources that meet the second request; and generating a co-allocation map between the first group of resources and the second group of resources, wherein the co-allocation map comprises at least one of (1) intersecting time frames in which both the first request and the second request may be simultaneously satisfied, and (2) all time frames where available resources exist that satisfy the first request and the second request. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A system for co-allocating resources within a compute environment, the system comprising:
-
a processor; means that controls the processor to receive a first request for a reservation for a first type of resource in a compute environment comprising a plurality of networked computing devices; means that controls the processor to analyze first constraints and service level agreement guarantees associated with the first request, the first constraints and service level agreement guarantees related to use of the compute environment; means that controls the processor to identify a first group of resources that meet the request for the first type of resource; means that controls the processor to receive a second request for a reservation for a second type of resource in the compute environment; means that controls the processor to analyze second constraints and service level agreement guarantees associated with the second request, the second constraints and service level agreement guarantees related to use of the plurality of networked computing devices within the compute environment, wherein the first type of resource and second type of resource span at least one computing device of the plurality of networked computing devices, wherein each computing device of the plurality of networked computing devices has a homogeneous processor architecture; means that controls the processor to identify a second group of resources that meet the request for the second type of resource; and means that controls the processor to generate a co-allocation map between the first group of resources and the second group of resources, wherein the co-allocation map comprises at least one of (1) intersecting time frames in which both the first request and the second request may be simultaneously satisfied, and (2) all time frames where available resources exist that satisfy the first request and the second request. - View Dependent Claims (33)
-
-
34. A system for co-allocating resources within a compute environment, the system comprising:
-
a processor; a first module controlling the processor to receive a first request for a reservation for a first type of resource in a compute environment comprising a plurality of networked computing devices; a second module controlling the processor to analyze first constraints and service level agreement guarantees associated with the first request, the first constraints and service level agreement guarantees related to use of the compute environment; a third module controlling the processor to identify a first group of resources that meet the request for the first type of resource; a fourth module controlling the processor to receive a second request for a reservation for a second type of resource in the compute environment; a fifth module controlling the processor to analyze second constraints and service level agreement guarantees associated with the second request, the second constraints and service level agreement guarantees related to use of the compute environment, wherein the first type of resource and second type of resource span at least one computing device of the plurality of networked computing devices, wherein each computing device of the plurality of networked computing devices has a homogeneous processor architecture; a sixth module controlling the processor to identify a second group of resources that meet the request for the second type of resource; and a seventh module controlling the processor to generate a co-allocation map between the first group of resources and the second group of resources, wherein the co-allocation map comprises at least one of (1) intersecting time frames in which both the first request and the second request may be simultaneously satisfied, and (2) all time frames where available resources exist that satisfy the first request and the second request. - View Dependent Claims (35)
-
-
36. A non-transitory computer-readable medium storing instructions for controlling a computing device to co-allocate resources within a compute environment, the instructions causing the computing device to perform steps comprising:
-
receiving a first request for a reservation for a first type of resource in a compute environment comprising a plurality of networked computing devices; analyzing first constraints and service level agreement guarantees associated with the first request, the first constraints and service level agreement guarantees related to use of the compute environment; identifying a first group of resources that meet the request for the first type of resource; receiving a second request for a reservation for a second type of resource in the compute environment; analyzing second constraints and service level agreement guarantees associated with the second request, the second constraints and service level agreement guarantees related to use of the compute environment, wherein the first type of resource and second type of resource span at least one computing device of the plurality of networked computing devices, wherein each computing device of the plurality of networked computing devices has a homogeneous processor architecture; identifying a second group of resources that meet the request for the second type of resource; and generating a co-allocation map between the first group of resources and the second group of resources, wherein the co-allocation map comprises at least one of (1) intersecting time frames in which both the first request and the second request may be simultaneously satisfied, and (2) all time frames where available resources exist that satisfy the first request and the second request. - View Dependent Claims (37)
-
Specification