×

Program execution control in parallel processor system for parallel execution of plural jobs by selected number of processors

  • US 5,752,030 A
  • Filed: 08/04/1993
  • Issued: 05/12/1998
  • Est. Priority Date: 08/10/1992
  • Status: Expired due to Fees
First Claim
Patent Images

1. A job execution control method in a parallel processor system provided with a plurality of processors, comprising the steps of:

  • (a) storing, for each of a plurality of jobs waiting for execution thereof in the parallel processor system,a requested processor number which is designated with respect to that job and which represents a requested minimum processor number required for executing said each job,an upper limit used processor number representative of an upper limit number of processors to be used for each of the execution waiting jobs, anda requested execution time which represents a maximum job execution time when that job is executed by processors equal in number to the requested processor number stored for that job;

    (b) judging, at a point of time when some idle processors are generated, whether or not the requested processor number stored for an earliest one of the plurality of execution waiting jobs for which a request for execution is issued earliest is not larger than the total number of generated idle processors;

    (c) assigning processors not smaller in number than the requested processor number and not larger than the upper limit used processor number stored for the earliest job, to the earliest job to activate the earliest job in the case where said judging in said step (b) is that the requested processor number stored for the earliest job is not larger than the total number of generated idle processors;

    (d) predicting an instant of time of completion of each of one or plural jobs under execution on the basis of a requested execution time stored for that job and an instant of time of start of execution of that job, where said judging in said step (b) is that the requested processor number stored for the earliest job is larger than the total number of generated idle processors by determining a corrected requested execution time representative of the maximum execution time of each job under execution when that job is executed by processors equal in number to not the requested processor stored for that job, but a processor number assigned to that job, on the basis of the requested minimum processor number stored for that job, the processor number assigned to that job and the requested execution time stored for that job;

    (e) predicting a time of lapse from a present instant of time to a time when a generation of idle processors is not smaller in number than the requested processor number stored for the earliest job on the basis of a predicted completion time instant of each job under execution;

    (f) judging, which of the earliest job and one of jobs subsequent to the earliest job should be activated preferentially for improved system throughput, on the basis of at least the predicted lapse time;

    (g) waiting for the generation of idle processors not smaller in number than the requested processor number stored for the earliest job where said judging in said step (f) is that the earliest job should be activated preferentially;

    (h) performing said steps (b) and (c) for the subsequent job where said judging in said step (f) is that the one subsequent job should be activated preferentially; and

    (i) executing the jobs with the processors.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×