Support of non-trivial scheduling policies along with topological properties
First Claim
1. A computer system having a scheduling system to schedule a job having resource mapping requirements to resources in a computing architecture arranged at least in part on node boards in host computers, each node board having at least one central processor unit (CPU) and shared memory, said node boards being interconnected into groups of node boards providing access between the central processing units (CPUs) and shared memory on different node boards, said computer system comprising:
- a processor for executing computing instructions;
memory for storing said computing instructions;
a scheduling system associated with the processor and the memory, and comprising;
a scheduling unit for scheduling jobs to resources, said scheduling unit generating a candidate host list representing the resources in the host computers available to execute the job to be scheduled based on resource requirements of the job to be scheduled;
a topology library unit comprising a machine map M of the computer system, said machine map M indicative of the interconnections of the resources in the computer system to which a scheduling system can schedule the jobs, and, at least one global status map Yn, each said global status map Yn indicative of interconnections of resources in the computer system to which the scheduling unit can schedule jobs if non-trivial scheduling is utilized;
a topology monitoring unit for monitoring a status of the resources in the host computers and generating status information signals indicative of a status of the resources;
wherein the topology library unit receives the status information signals and the candidate host lists and determines a free map F of resources to execute the job to be scheduled, said free map indicative of the interconnection of resources to which the job in a current scheduling cycle can be scheduled based on the status information signals, the candidate host list and the machine map M;
wherein the scheduling unit also indicates resources which have a status other than free and to which the scheduling unit has determined the topology library unit may schedule the job being scheduled if non-trivial scheduling is utilized;
wherein the topology library unit initially determines a free map F of resources to execute the job being scheduled by removing from the machine map M all resources which fall within the at least one global status map Yn, and then re-introducing specific resources in the at least one global status map Yn which the scheduling unit has indicated the job being scheduled can be scheduled to; and
wherein the topology monitoring unit dispatches a job to the resources in the free map F which matches the resource mapping requirements of the job and falls within the free map F as determined by the topology library unit based on the candidate host list, the machine map M the status information signals and the specific resources in the at least one global status map Yn which the scheduling unit has indicated the job being scheduled can be scheduled to.
3 Assignments
0 Petitions
Accused Products
Abstract
A system comprises a scheduling unit for scheduling jobs to resources, and a library unit comprising a machine map of the system and a global status map of interconnections of resources. A monitoring unit generates status information signals for the resources. The library unit receives the signals and determines a free map of resources to execute the job to be scheduled, the free map indicating the interconnection of resources to which the job in a current scheduling cycle can be scheduled and determined by removing from the machine map resources which fall within the global status map and re-introducing resources in the global status map which the scheduling unit has indicated the job being scheduled can be scheduled to. The monitoring unit dispatches a job to the resources in the free map which match the resource mapping requirements of the job and fall within the free map.
-
Citations
2 Claims
-
1. A computer system having a scheduling system to schedule a job having resource mapping requirements to resources in a computing architecture arranged at least in part on node boards in host computers, each node board having at least one central processor unit (CPU) and shared memory, said node boards being interconnected into groups of node boards providing access between the central processing units (CPUs) and shared memory on different node boards, said computer system comprising:
-
a processor for executing computing instructions; memory for storing said computing instructions; a scheduling system associated with the processor and the memory, and comprising; a scheduling unit for scheduling jobs to resources, said scheduling unit generating a candidate host list representing the resources in the host computers available to execute the job to be scheduled based on resource requirements of the job to be scheduled; a topology library unit comprising a machine map M of the computer system, said machine map M indicative of the interconnections of the resources in the computer system to which a scheduling system can schedule the jobs, and, at least one global status map Yn, each said global status map Yn indicative of interconnections of resources in the computer system to which the scheduling unit can schedule jobs if non-trivial scheduling is utilized; a topology monitoring unit for monitoring a status of the resources in the host computers and generating status information signals indicative of a status of the resources; wherein the topology library unit receives the status information signals and the candidate host lists and determines a free map F of resources to execute the job to be scheduled, said free map indicative of the interconnection of resources to which the job in a current scheduling cycle can be scheduled based on the status information signals, the candidate host list and the machine map M; wherein the scheduling unit also indicates resources which have a status other than free and to which the scheduling unit has determined the topology library unit may schedule the job being scheduled if non-trivial scheduling is utilized; wherein the topology library unit initially determines a free map F of resources to execute the job being scheduled by removing from the machine map M all resources which fall within the at least one global status map Yn, and then re-introducing specific resources in the at least one global status map Yn which the scheduling unit has indicated the job being scheduled can be scheduled to; and wherein the topology monitoring unit dispatches a job to the resources in the free map F which matches the resource mapping requirements of the job and falls within the free map F as determined by the topology library unit based on the candidate host list, the machine map M the status information signals and the specific resources in the at least one global status map Yn which the scheduling unit has indicated the job being scheduled can be scheduled to.
-
-
2. In a computer system comprising resources arranged at least in part on node boards, each node board having at least one central processing unit (CPU), said node boards being interconnected on host computers in the computer system to provide access between the central processing units (CPUs) on different boards, a method of scheduling a job to the resources implementing non-trivial scheduling which comprises scheduling requiring more than one scheduling cycle to schedule a job, said method comprising:
-
(a) determining a machine map M of the computer system indicative of all the interconnections of all the resources in the computer system to which the scheduling system can schedule jobs and storing the machine map M in a topology library unit; (b) assessing at a topology monitoring unit a free map F of resources indicative of the interconnection of all resources to which the scheduling unit can schedule a job in a current scheduling cycle without using non-trivial scheduling; (c) assessing at the topology monitoring unit at least one global status map Yn of resources indicative of the interconnection of all resources to which the scheduling unit can schedule a job utilizing non-trivial scheduling; (d) matching resource requirements to execute a job currently being scheduled and generating a candidate host list indicative of resources to which the job can be scheduled in the current scheduling cycle, and also indicative of resources to which the job can be scheduled using non-trivial scheduling; (e) matching the job to be scheduled, including topological requirements of the job, to the free map F which match the topological resource requirements of the job, said free map F based on the machine map M but excluding the at least one global status maps Yn; (f) the topological requirements of the job cannot be scheduled to the free map F, modifying the free map F by including in the free map F resources in the at least one global status maps Yn which the candidate host list has indicated the job can be scheduled utilizing non-trivial scheduling; (g) matching the resource requirements including the topological requirements of the job to the map of resources in the free map F which has been modified to exclude the resources in the at least one global status map Yn, but to include resources which the candidate host list indicates the job can be scheduled to utilizing non-trivial scheduling; and (h) dispatching the job to the matched resources.
-
Specification