Method for job impact learning
AssigneeImageX.com, Inc.
InventorBrent Krum
Life of this patent
Estimating the term…
Abstract
A method for processing requests to service computational tasks. An application server system receives requests to run various jobs. A job indicates that a certain application program is to be executed with a certain set of input. The application server system includes a master computer and multiple slave computers. The master computer receives requests to run jobs, selects a slave computer to run each job, and then assigns each job to slave computer selected for that job. The master computer of the application server system receives the requests from client computers that may be connected to the application server system via the Internet. A client-side component of the application server system may execute on the client computers to assist users in submitting their requests.
Claims43
A method in a computer system for determining an estimated execution time for a job to run on a computing device, the method comprising:
- determining a job size of the job;
- determining a computing resource load for the computing device when the job is to run;
- estimating the execution time for the job to run on the computing device, the estimating based on analysis of the actual execution time of another job, the analysis factoring in the determined job size, the job size of the other job, and a computing resource load of a computing device when the other job executed, wherein the execution time for the job is estimated by adjusting the actual execution time of the other job by a result of a projection factor applied to a difference between the computer resource load when the other job executed and the determined computing resource load.
A computer-readable medium containing a data structure for use in estimating an execution time of a job, the data structure comprising a plurality of execution times, the execution times being derived from actual execution times of jobs having various job sizes and on computing devices with various computing resource loads, the execution times being grouped according to job size and according to computing resource load, wherein the execution times for a job size grouping at various computing resource loads are calculated by adjusting the actual execution time of a job by a result of a projection factor applied to a difference between the computer resource load when the job executed and the computing resource load for which the execution time is to be calculated.
A method in a computer system for calculating an estimated execution time of an application program on a computing device, the method comprising:
- collecting actual execution times of the application program with various input sizes executing on a computing device with various computing resource loads;
- providing the input size of the application program;
- providing an estimated computing resource load of the computing device when the application program is to be executed;
- estimating the execution time for the application program with the provided input size when the application program is executed on a computing device with the provided computing resource load based on a collected actual execution time for the application program with a known input size executing on a computing device with a known computing resource load, wherein the execution time for the application program is estimated by adjusting the actual execution time of the application program with a known input size by a result of a projection factor applied to a difference between the known computer resource load and the estimated computing resource load.
A method for calculating an estimated execution time of a job on a computing device, the job having an application program and input, the method comprising:
- step for providing a job size of the job;
- step for providing a computing resource load of the computing device when the job is to be executed;
- step for estimating the execution time for the job when the job is executed on a computing device with the provided computing resource load based on an actual execution time of a job with the same application program with a known job size executing on a computing device with a known computing resource load, wherein the execution time for the job is estimated, by adjusting the actual execution time of the job with the same application program with a known job size by a result of a projection factor applied to a difference between the known computer resource load and the provided computing resource load.
Dependencies are inferred from the claim text.