IP Library › Granted Patent US 12,386,660
Granted Patent B2
US 12,386,660 · App. 17/505,367 · Granted Aug 12, 2025

Resource availability-based workflow execution timing determination

Inventors: Yannick Saillet (Stuttgart, DE); Namit Kabra (Hyderabad, IN)
Assignee: International Business Machines Corporation
G06F9/4887G06F9/5027G06N20/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,386,660
App. No.
17/505,367
Granted
Aug 12, 2025
Kind
B2
Abstract

According to a computer-implemented method, an available amount of each of multiple computing resources is determined by machine logic over a period of time at a computing device. The machine logic also determines an expected usage of each computing resource to execute each workflow in a queue. The machine logic also determines a time of execution of each workflow in the queue based on the available amount of each of the multiple computing resources over time and the expected usage of each computing resource to execute each workflow in the queue.

Claims (26)

1. A computer-implemented method, comprising:

scheduling, by machine logic, multiple workflows in a queue for execution over a period of time by a data processing system;

determining, by the machine logic, an available amount of multiple computing resources of the data processing system to execute the multiple workflows over the period of time;

determining, by the machine logic, an expected usage of each computing resource to execute the multiple workflows in the queue by creating a superimposed time-based graph of resource usage of a first combination of the multiple workflows superimposed over resource usage of a second combination of the multiple workflows, wherein the superimposed time-based graph is mapped using previous workflows that have been performed by similar computing resources having characteristics of the multiple workflows; and

rescheduling, by the machine logic, an order of the multiple workflows in the queue based on an execution order that maximizes usage of the multiple computing resources without overcommitment, by comparing the expected usage with the available amount of the multiple computing resources.

2. The computer-implemented method of claim 1 , wherein scheduling the multiple workflows in the queue comprises sequentially placing the multiple workflows in the queue in an order that the multiple workflows are received.

3. The computer-implemented method of claim 1 , wherein scheduling the multiple workflows in the queue comprises placing the multiple workflows in the queue based on a priority of the multiple workflows.

4. The computer-implemented method of claim 1 , further comprising storing historical information of an amount of computing resources used over time for the previous workflows.

5. The computer-implemented method of claim 1 , wherein rescheduling the multiple workflows comprises ordering the multiple workflows in the queue based on an expected average computing resource usage of the multiple workflows in the queue.

6. The computer-implemented method of claim 5 , wherein the multiple workflows are ordered in the queue in descending order of expected average computing resource usage, wherein a workflow with a highest expected average computing resource usage is executed first.

7. A system, comprising:

a scheduler to schedule multiple workflows in a queue for execution over a period of time by a data processing system;

a resource analyzer to determine an available amount of multiple computing resources of the data processing system to execute the multiple workflows over the period of time; and

a workflow analyzer to determine an expected usage of each computing resource to execute the multiple workflows in the queue by creating a superimposed time-based graph of resource usage of a first combination of the multiple workflows superimposed over resource usage of a second combination of the multiple workflows, wherein the superimposed time-based graph is mapped using previous workflows that have been performed by similar computing resources having characteristics of the multiple workflows;

a scheduler to reschedule an order of the multiple workflows in the queue based on an execution order that maximizes usage of the multiple computing resources without overcommitment, by comparing the expected usage with the available amount of the multiple computing resources.

8. The system of claim 7 , wherein the scheduler is to:

sequentially analyze each of the multiple workflows in the queue to determine whether a given workflow would overcommit any of the multiple computing resources at a scheduled time of execution; and

move the given workflow that would overcommit any of the multiple computing resources down in the queue.

9. The system of claim 7 , wherein the scheduler is to:

determine which of the multiple workflows can be executed at a particular point in time without overcommitting the multiple computing resources; and

determine, for workflows that would overcommit the multiple computing resources if executed at the particular point in time, when each of the workflows can be executed without overcommitting the multiple computing resources.

10. The system of claim 7 , wherein the scheduler is to:

determine that expected computing resource usage for a given workflow is above a threshold level; and

reschedule the given workflow in the queue in response to determining that the expected computing resource usage for the given workflow would not overcommit the multiple computing resources over the time period.

11. The system of claim 10 , wherein determining that the expected computing resource usage for the given workflow would not overcommit the multiple computing resources over the time period comprises determining that the expected computing resource usage over the time period is less than a maximum resource utilization limit.

12. The system of claim 10 , wherein the threshold level is a user-specified parameter.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2021
From: SAILLET, YANNICK; KABRA, NAMIT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 057838/0514 →
Continuity (2)
Continuation 16424941 · May 29, 2019
Related Publication 20220035667A1 · Feb 3, 2022
References Cited (18)
US 10089144B1 · Nagpal · 2018 [cited by applicant]
US 20090119238A1 · Amini · 2009 [cited by applicant]
US 20120072758A1 · Shafi · 2012 [cited by examiner]
US 20150178129A1 · Dube · 2015 [cited by examiner]
US 20160098292A1 · Boutin · 2016 [cited by examiner]
US 20160098662A1 · Voss · 2016 [cited by examiner]
US 20160328273A1 · Molka · 2016 [cited by applicant]
US 20170046203A1 · Singh · 2017 [cited by applicant]
US 20170052814A1 · Aguiar · 2017 [cited by applicant]
US 20180107513A1 · Devi · 2018 [cited by examiner]
US 20180349183A1 · Popovic · 2018 [cited by examiner]
US 20190058669A1 · Duarte · 2019 [cited by applicant]
US 20200004903A1 · Gottin · 2020 [cited by examiner]
US 20200174844A1 · Bergsma · 2020 [cited by applicant]
US 20200264928A1 · Kalmuk · 2020 [cited by examiner]
Janardhanan, et al; “CPU Workload forecasting of Machines in Data Centers using LSTM Recurrent Neural Networks and ARIMA Models”; Mar. 26, 2018. [cited by applicant]
Yan; “Scientific Workflow Scheduling in Computational Grids—Planning Reservation and Data/Network Awareness”; 2007; IEEE, pp. 18-25. [cited by applicant]
IBM: List of IBM Patents or Patent Applications Treated as Related, Oct. 19, 2021, pp. 1-2. [cited by applicant]