发明名称 Managing high performance computing resources using job preemption
摘要 The preemption of running jobs by other running or queued jobs in a system that has processing resources. The system has running jobs, and queued jobs that are awaiting processing by the system. In a scheduling operation, preemptor jobs are identified, the preemptor jobs being jobs that are candidates for preempting one or more of the running jobs. The preemptor jobs include queued jobs, as well as running jobs that are capable of using more processing resource of the system. One of the other running jobs is preempted to free processing resources for the running job that was identified as a preemptor job. Accordingly, not only may queued jobs preempt running jobs, but currently running jobs may preempt other currently running jobs.
申请公布号 US9424078(B2) 申请公布日期 2016.08.23
申请号 US201113296141 申请日期 2011.11.14
申请人 Chakravorty Sayantan;Watson Colin;Crall Christopher J. 发明人 Chakravorty Sayantan;Watson Colin;Crall Christopher J.
分类号 G06F9/455;G06F9/46;G06F9/48;G06F9/50;G06F9/52 主分类号 G06F9/455
代理机构 代理人 Gabryjelski Henry;Barker Doug;Minhas Micky
主权项 1. A computer system, comprising: one or more processors; and at least one computer-readable storage device having stored thereon computer-executable instructions that are executable by the one or more processors to cause the computer system to perform a scheduling iteration of one or more jobs of the computer system, the computer-executable instructions including instructions that are executable to cause the computer system to perform at least the following: identify a plurality of running jobs that are running in the computer system and one or more queued jobs that are awaiting to be processed by the system, wherein each running job, and each queued job, specifies at least one of a minimum amount of processing resources that are to be allocated to processing the job and a maximum amount of processing resources that are to be allocated to processing the job; identify a plurality of preemptor jobs that are eligible to preempt one or more of the plurality of running jobs, the plurality of preemptor jobs comprising all of the one or more queued jobs and each running job of the plurality of running jobs that is currently running below the maximum amount of processing resources that are to be allocated to processing the job, wherein a threshold for determining whether one of the plurality of preemptor jobs preempts one or more of the plurality of running jobs is different for running jobs and queued jobs, wherein a threshold for running preemptor jobs to preempt other running jobs is met for a specific running preemptor job until the specified maximum amount of processing resources are available for assignment to the specific running preemptor job, and wherein a threshold for queued preemptor jobs to preempt other running jobs is met for a specific queued job until the specified minimum amount of processing resources will be available for assignment to the specific queued preemptor job after preempting a running job; preempt at least one of the plurality of running jobs with a first job that is included in the plurality of preemptor jobs sorted based on, at least one of job priority and time elapsed since job request, and based on the job's threshold being met, wherein at least the specified minimum amount of processing resources will be available for assignment to the first job after preempting the at least one of the plurality of running jobs; and process the first job using at least the specified minimum amount of processing resources including an amount of system processing resources that became available as a result of the at least one of the plurality of running jobs being preempted.
地址 Redmond WA US