US2012204185A1PendingUtilityA1

Workflow control of reservations and regular jobs using a flexible job scheduler

Individually held — no corporate assignee on recordPriority: Feb 1, 2011Filed: Apr 18, 2012Published: Aug 9, 2012
Est. expiryFeb 1, 2031(~4.5 yrs left)· nominal 20-yr term from priority
G06F 2209/5014G06F 9/5038G06F 2209/5021G06F 2209/506G06F 9/4881
48
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A scheduler receives flexible reservation requests for scheduling in a computing environment comprising consumable resources. The flexible reservation request specifies a duration and a required resource. The consumable resources comprise machine resources and floating resources. The scheduler creates a flexible job for the flexible reservation request and places the flexible job in a prioritized job queue for scheduling, wherein the flexible job is prioritizes relative to at least one regular job in the prioritized job queue. The scheduler adds a reservation set to a waiting state for the flexible reservation request. The scheduler, responsive to detecting the flexible job positioned in the prioritized job queue for scheduling next and detecting a selection of consumable resources available to match the at least one required resource for the duration, transfers the selection of consumable resources to the reservation and sets the reservation to an active state.

Claims

exact text as granted — not AI-modified
1 . A method for managing workflow, comprising:
 receiving, by a scheduler comprising one or more processors and one or more memories, at least one flexible reservation request for scheduling in a computing environment comprising a plurality of consumable resources, wherein the flexible reservation request specifies a duration and at least one required resource and wherein the plurality of consumable resources comprises at least one machine resource and at least one floating resource;   creating, by the scheduler, a flexible job for the at least one flexible reservation request and placing the flexible job in a prioritized job queue for scheduling;   adding a reservation set to a waiting state for the at least one flexible reservation request;   responsive to detecting the flexible job positioned in the prioritized job queue for scheduling next and detecting a selection of the plurality of consumable resources available to match the at least one required resource for the duration, transferring the selection of the plurality of consumable resources to the reservation and setting the reservation to an active state, wherein the reservation is activated as the selection of the plurality of consumable resources become available and has uninterrupted use of the selection of the plurality of consumable resources for the duration for at least one bound job to the flexible reservation.   
     
     
         2 . The method according to  claim 1 , further comprising:
 receiving, by the scheduler, a first job for scheduling in the computing environment;   placing, by the scheduler, the first job in the prioritized job queue in a position relative in priority to the flexible job;   responsive to detecting the first job positioned in the prioritized job queue for scheduling next and detecting a second selection of the plurality of consumable resources available for the first job, dispatching the first job to a resource manager to run on the second selection of the plurality of consumable resources;   responsive to receiving, by the scheduler, a second job with a priority level greater than the first job dispatched to the second selection of the plurality of consumable resources and only the second selection of the plurality of consumable resources are available for the second job, preempting the first job by removing the job from the second selection of the plurality of consumable resources and dispatching the second job to the second selection of the plurality of consumable resources;   responsive to receiving, by the scheduler, a second flexible reservation request, creating, by the scheduler, a second flexible job for the second flexible reservation request and placing the second flexible job in a prioritized job queue for scheduling;   adding a second reservation set to a waiting state for the second flexible reservation request; and   responsive to receiving, by the scheduler, the second flexible job with a priority level greater than the second job dispatched to the second selection of the plurality of consumable resources and only the second selection of the plurality of consumable resources are available for the second flexible job, preempting the second job by removing the second job from the second selection of the plurality of consumable resources, transferring the second selection of the plurality of consumable resources to the second reservation and setting the second reservation to an active state.   
     
     
         3 . The method according to  claim 1 , further comprising:
 prioritizing the flexible job within the prioritized job queue in a position relative in priority to at least one regular job, wherein each job within the prioritized job queue waits in the prioritized job queue until scheduled by the scheduler in order of priority.   
     
     
         4 . The method according to  claim 1 , further comprising:
 responsive to receiving, by the scheduler, the at least one bound job for the flexible reservation, dispatching the at least one bound job directly to the flexible reservation for running on the selection of plurality of consumable resources without placement in the prioritized job queue.   
     
     
         5 . The method according to  claim 1 , further comprising:
 responsive to detecting the flexible job positioned in the prioritized job queue for scheduling next and detecting a selection of the plurality of consumable resources available to match the at least one required resource for the duration, moving the at least one floating resource to at least one compute node comprising the at least one machine resource of the selection of the plurality of consumable resources, wherein the at least one floating resource further comprises at least one of a shared cluster resource from among computational network bandwidth, input/output network bandwidth, at least one token, and at least one software license and wherein the at least one machine resource further comprises at least one of at least one processor, memory, at least one disk drive, and at least one communication adapter.   
     
     
         6 . The method according to  claim 1 , further comprising:
 configuring, by the scheduler, the plurality of consumable resources in a cluster managed by the scheduler.   
     
     
         7 . The method according to  claim 1 , further comprising:
 responsive to setting the reservation to an active state, removing the flexible job from the prioritized job queue.   
     
     
         8 . The method according to  claim 1 , further comprising:
 receiving, by the scheduler, an advance reservation requirement for scheduling in the computing environment, wherein the advance reservation requirement specifies a required start time, a second duration, and at least one required machine resource;   responsive to the scheduler determining that at the required start time a particular at least one machine resource from among the plurality of consumable resources matching the at least one required machine resource are available for the second duration, adding an advance reservation to a reservation sequences list reserving the particular at least one machine resource for uninterrupted use from the start time for the second duration;   responsive to the scheduler determining that the current time matches the required start time for the reservation, transferring the at least one required machine resource to the advance reservation and responsive to receiving a job bound to the advance reservation requiring a particular floating resource, waiting to run the job until the particular floating resource from among the at least one floating resource is available; and   responsive to the scheduler determining that at the required start time there are not resources available from the plurality of consumable resources to match the at least one required machine resource, rejecting the advance reservation requirement.   
     
     
         9 . The method according to  claim 1 , further comprising:
 specifying a rolling update license for the at least one floating resource;   receiving, by the scheduler, a plurality of flexible reservation requests each specifying at least one required machine resource and a required rolling update license;   creating, by the scheduler, a separate flexible job for each of the plurality of flexible reservation requests and placing each separate flexible job in the prioritized job queue for scheduling;   adding a separate reservation set to a waiting state for each of the plurality of flexible reservation requests;   responsive to detecting a particular flexible job from among the separate flexible jobs positioned in the prioritized job queue for scheduling next and detecting a selection of the plurality of consumable resources comprising the rolling update license available to match the at least one required resource for the duration, transferring the selection of the plurality of consumable resources to the separate reservation and setting the separate reservation to an active state, wherein the separate reservation is activated as the selection of the plurality of consumable resources become available and has uninterrupted use of the selection of the plurality of consumable resources;   sending, by the scheduler, an update to a cluster management system indicating the separate reservation is active;   receiving, by the scheduler, at least one job bound to the separate reservation for upgrading at least one software element within the plurality of consumable resources; and   dispatching the at least one job bound to the separate reservation to the separate reservation.

Join the waitlist — get patent alerts

Track US2012204185A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.