Job distributed within a grid environment using mega-host groupings of execution hosts based on resource attributes
First Claim
1. A method for job distribution within a grid environment, comprising:
- receiving jobs at a submission cluster for distribution of the jobs to at least one of a plurality of execution clusters, each execution cluster comprising one or more execution hosts;
determining resource attributes corresponding to each execution host of the execution clusters;
grouping, for each execution cluster, execution hosts based on the resource attributes of the respective execution hosts;
defining, for each grouping of execution hosts, a mega-host for the respective execution cluster, the mega-host for a respective execution cluster defining resource attributes based on the resource attributes of the respective grouped execution hosts;
determining resource requirements for the jobs;
grouping the jobs based on the respective resource requirements of the jobs;
identifying candidate mega-hosts for each group of jobs based on the resource attributes of the respective mega-hosts and the resource requirements of the jobs; and
during a scheduling cycle, in response to determining that one job of a particular group of jobs cannot be forwarded to the execution clusters, ignoring remaining jobs in the particular group of jobs during the scheduling cycle.
1 Assignment
0 Petitions
Accused Products
Abstract
According to one aspect of the present disclosure, a method and technique for job distribution within a grid environment is disclosed. The method includes: receiving jobs at a submission cluster for distribution of the jobs to at least one of a plurality of execution clusters, each execution cluster comprising one or more execution hosts; determining resource attributes corresponding to each execution host of the execution clusters; grouping, for each execution cluster, execution hosts based on the resource attributes of the respective execution hosts; defining, for each grouping of execution hosts, a mega-host for the respective execution cluster, the mega-host for a respective execution cluster defining resource attributes based on the resource attributes of the respective grouped execution hosts; determining resource requirements for the jobs; and identifying candidate mega-hosts for the jobs based on the resource attributes of the respective mega-hosts and the resource requirements of the jobs.
32 Citations
14 Claims
-
1. A method for job distribution within a grid environment, comprising:
-
receiving jobs at a submission cluster for distribution of the jobs to at least one of a plurality of execution clusters, each execution cluster comprising one or more execution hosts; determining resource attributes corresponding to each execution host of the execution clusters; grouping, for each execution cluster, execution hosts based on the resource attributes of the respective execution hosts; defining, for each grouping of execution hosts, a mega-host for the respective execution cluster, the mega-host for a respective execution cluster defining resource attributes based on the resource attributes of the respective grouped execution hosts; determining resource requirements for the jobs; grouping the jobs based on the respective resource requirements of the jobs; identifying candidate mega-hosts for each group of jobs based on the resource attributes of the respective mega-hosts and the resource requirements of the jobs; and during a scheduling cycle, in response to determining that one job of a particular group of jobs cannot be forwarded to the execution clusters, ignoring remaining jobs in the particular group of jobs during the scheduling cycle. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system for job distribution within a grid environment, comprising:
a submission cluster, having a processor, for distributing jobs to at least one of a plurality of execution clusters, wherein each execution cluster comprises one or more execution hosts, and wherein the submission cluster comprises logic executable by the processor to; determine resource attributes corresponding to each execution host of the execution clusters; group, for each execution cluster, execution hosts based on the resource attributes of the respective execution hosts; define, for each grouping of execution hosts, a mega-host for the respective execution cluster, the mega-host for a respective execution cluster defining resource attributes based on the resource attributes of the respective grouped execution hosts; determine resource requirements for the jobs; and group the jobs based on the respective resource requirements of the jobs; identify candidate mega-hosts for each group of jobs based on the resource attributes of the respective mega-hosts and the resource requirements of the jobs; and during a scheduling cycle, in response to determining that one job of a particular group of jobs cannot be forwarded to the execution clusters, ignore remaining jobs in the particular group of jobs during the scheduling cycle. - View Dependent Claims (7, 8, 9, 10)
-
11. A computer program product for job distribution within a grid environment, the computer program product comprising:
a non-transitory computer readable medium having computer readable program code embodied therewith, the computer readable program code comprising computer readable program code configured to; determine resource attributes corresponding to each execution host of the execution clusters; group, for each execution cluster, execution hosts based on the resource attributes of the respective execution hosts; define, for each grouping of execution hosts, a mega-host for the respective execution cluster, the mega-host for a respective execution cluster defining resource attributes based on the resource attributes of the respective grouped execution hosts; determine resource requirements for the jobs; group the jobs based on the respective resource requirements of the jobs; identify candidate mega-hosts for each group of jobs based on the resource attributes of the respective mega-hosts and the resource requirements of the jobs; and during a scheduling cycle, in response to determining that one job of a particular group of jobs cannot be forwarded to the execution clusters, ignore remaining jobs in the particular group of jobs during the scheduling cycle. - View Dependent Claims (12, 13, 14)
Specification