Grid non-deterministic job scheduling
First Claim
1. A method for scheduling a job on a grid, the method comprising:
- maintaining a record of state-independent properties of each resource in the grid;
sending a job, submitted to the grid by a computer, to a resource that is closest in proximity to the submitting computer;
determining by the resource, whether it can execute the job under the conditions specified in the job;
responsive to the determination that the resource can not execute the job under the conditions specified in the job, rejecting the job;
responsive to rejection of the job, determining from the said record whether any of the other resources have the properties required to execute the job;
responsive to the determination that one or more of the other resources have the properties required to execute the job, sending the job to a resource at random;
responsive to the determination that none of the other resources have the properties required to execute the job, determining whether the job has gone through a predefined number of iterations;
responsive to the determination that the job has not gone through a predefined number of iterations, entering a new iteration by sending the job to a resource at random; and
responsive to the determination that the job has gone through a predefined number of iterations, notifying the submitting computer that the job has failed.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention is method for scheduling jobs in a grid computing environment without having to monitor the state of the resource on the gird comprising a Global Scheduling Program (GSP) and a Local Scheduling Program (LSP). The GSP receives jobs submitted to the grid and distributes the job to the closest resource. The resource then runs the LSP to determine if the resource can execute the job under the conditions specified in the job. The LSP either rejects or accepts the job based on the current state of the resource properties and informs the GSP of the acceptance or rejection. If the job is rejected, the GSP randomly selects another resource to send the job to using a resource table. The resource table contains the state-independent properties of every resource on the grid.
46 Citations
1 Claim
-
1. A method for scheduling a job on a grid, the method comprising:
-
maintaining a record of state-independent properties of each resource in the grid; sending a job, submitted to the grid by a computer, to a resource that is closest in proximity to the submitting computer; determining by the resource, whether it can execute the job under the conditions specified in the job; responsive to the determination that the resource can not execute the job under the conditions specified in the job, rejecting the job; responsive to rejection of the job, determining from the said record whether any of the other resources have the properties required to execute the job; responsive to the determination that one or more of the other resources have the properties required to execute the job, sending the job to a resource at random; responsive to the determination that none of the other resources have the properties required to execute the job, determining whether the job has gone through a predefined number of iterations; responsive to the determination that the job has not gone through a predefined number of iterations, entering a new iteration by sending the job to a resource at random; and responsive to the determination that the job has gone through a predefined number of iterations, notifying the submitting computer that the job has failed.
-
Specification