IP Library › Granted Patent US 10,552,223
Granted Patent B2
US 10,552,223 · App. 15/989,276 · Granted Feb 4, 2020

User interface and system supporting user decision making and readjustments in computer-executable job allocations in the cloud

Inventors: Marco A. S. Netto (Sao Paulo, BR); Nicole B. Sultanum (Sao Paulo, BR); Renato L. d. F. Cunha (Sao Paulo, BR)
Assignee: International Business Machines Corporation
G06F9/5038G06F9/4881G06F9/5055G06F9/5077G06Q10/06311
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 10,552,223
App. No.
15/989,276
Granted
Feb 4, 2020
Kind
B2
Abstract

A visual tool may be provided to display information associated with computer job allocation and to allow a user to explore different job configurations. Jobs executing on a computing environment comprising a shared pool of configurable computing resources may be monitored. Cost and duration estimates may be determined with uncertainty associated with the cost and duration estimates. Sandbox environment may be provided that allow users to manipulate one or more different job configuration options for executing the jobs in the computing environment.

Claims (53)

1. A computer-implemented method of providing a user interface supporting user decision making and readjusting of computer job execution allocations, comprising:

receiving a list of computer executable jobs for execution on a computing environment comprising a pool of configurable computing resources;

receiving one or more user preferences and constraints associated with the list of computer executable jobs;

generating a plurality of execution scheduling options for the list of computer executable jobs;

providing a visualization comprising at least the plurality of execution scheduling options with corresponding time and cost estimates;

providing a sandbox environment for editing one or more of the plurality of execution scheduling options, wherein a user may use the sandbox to explore variations in time and cost by reconfiguring the scheduling options;

responsive to the user editing the one or more of the plurality of execution scheduling options via the sandbox environment, comparing the one or more edited scheduling options and the provided execution scheduling options, and storing the one or more of the plurality of edited execution scheduling options responsive to a selection from the user to save the edited execution scheduling option, allowing updating of the visualization to include the one or more of the plurality of execution scheduling options edited by the user with corresponding time and cost estimates;

receiving a user selection of an execution scheduling option from the plurality of execution scheduling options; and

iteratively performing:

monitoring execution of the computer executable jobs allocated in the execution scheduling option selected by the user;

monitoring resource status of the computing environment while the computer executable jobs are executing;

determining estimation of time and cost of running one or more of the computer executable jobs based on the monitoring of the execution and the resource status;

determining uncertainty associated with the estimation of time and cost of incomplete jobs at least based on analyzing internal computing structures associated with historical jobs, wherein incomplete jobs comprises running and queued jobs; and

allowing updating, during the execution, of the visualization associated with the generated plurality of execution scheduling options and scheduling options stored by the user using the sandbox environment with updates based on the estimation of time and cost and the uncertainty of remaining incomplete jobs.

2. The method of claim 1 , further comprising storing the plurality of execution scheduling options on a storage device.

3. The method of claim 1 , wherein the visualization comprises a plurality of charts presenting the plurality of execution scheduling options with a timeline, cost estimate and time estimate for completion, current execution time and status of currently executing jobs.

4. The method of claim 3 , wherein the visualization further comprises amount of computational resources used, uncertainty related to time of completion, uncertainty related to cost, wherein an alert is generated responsive to determining that one or more of the uncertainty related to time of completion and the uncertainty related to cost exceeds a predefined thresholds level.

5. The method of claim 3 , wherein the plurality of charts comprises at least one alternative scheduling option.

6. A computer program product for providing a user interface supporting user decision making and readjusting of computer job execution allocations, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions readable by a device to cause the device to perform a method comprising:

receiving a list of computer executable jobs for execution on a computing environment comprising a pool of configurable computing resources;

receiving one or more user preferences and constraints associated with the list of computer executable jobs;

generating a plurality of execution scheduling options for the list of computer executable jobs;

providing a visualization comprising at least the plurality of execution scheduling options with corresponding time and cost estimates;

providing a sandbox environment for editing one or more of the plurality of execution scheduling options, wherein a user may use the sandbox to explore variations in time and cost by reconfiguring the scheduling options;

responsive to the user editing the one or more of the plurality of execution scheduling options via the sandbox environment, comparing the one or more edited scheduling options and the provided execution scheduling options, and storing the one or more of the plurality of execution scheduling options responsive to a selection from the user to save the edited execution scheduling option, allowing updating of the visualization to include the one or more of the plurality of execution scheduling options edited by the user with corresponding time and cost estimates;

receiving a user selection of an execution scheduling option from the plurality of execution scheduling options; and

iteratively performing:

monitoring execution of the computer executable jobs allocated in the execution scheduling option selected by the user;

monitoring resource status of the computing environment while the computer executable jobs are executing;

determining estimation of time and cost of running one or more of the computer executable jobs based on the monitoring of the execution and the resource status;

determining uncertainty associated with the estimation of time and cost of incomplete jobs at least based on analyzing internal computing structures associated with historical jobs, wherein incomplete jobs comprises running and queued jobs; and

allowing updating, during the execution, of the visualization associated with the generated plurality of execution scheduling options and scheduling options stored by the user using the sandbox environment with updates based on the estimation of time and cost and the uncertainty of remaining incomplete jobs.

7. The computer program product of claim 6 , further comprising storing the plurality of execution scheduling options on a storage device.

8. The computer program product of claim 6 , wherein the visualization comprises a plurality of charts displaying the plurality of execution scheduling options with a timeline, cost estimate and time estimate for completion, current execution time and status of currently executing jobs.

9. The computer program product of claim 8 , wherein the visualization further comprises amount of computational resources used, uncertainty related to time of completion, uncertainty related to cost, wherein an alert is generated responsive to determining that one or more of the uncertainty related to time of completion and the uncertainty related to cost exceeds a predefined thresholds level.

10. The computer program product of claim 8 , wherein the plurality of charts comprises at least one alternative scheduling option.

11. A system of providing a user interface supporting user decision making and readjusting of computer job execution allocations, comprising:

at least one processor operable to receive a list of computer executable jobs for execution on a computing environment comprising a pool of configurable computing resources,

the at least one processor further operable to receive one or more user preferences and constraints associated with the list of computer executable jobs,

the at least one processor further operable to generate a plurality of execution scheduling options for the list of computer executable jobs;

a storage device coupled to the at least one processor and further operable to store the plurality of execution scheduling options;

the at least one processor further operable to a visualization comprising at least the plurality of execution scheduling options with corresponding time and cost estimates,

the at least one processor further operable to provide a sandbox environment for editing one or more of the plurality of execution scheduling options, wherein a user may use the sandbox to explore variations in time and cost by reconfiguring the scheduling options,

responsive to the user editing the one or more of the plurality of execution scheduling options via the sandbox environment, comparing the one or more edited scheduling options and the provided execution scheduling options, and storing the one or more of the plurality of execution scheduling options responsive to a selection from the user to save the edited execution scheduling option, the at least one processor further operable to allow updating of the visualization to include the one or more of the plurality of execution scheduling options edited by the user with corresponding time and cost estimates;

the at least one processor further operable to iteratively perform:

monitoring execution of the computer executable jobs allocated in an execution scheduling option selected by the user,

monitoring resource status of the computing environment while the computer executable jobs are executing,

determining estimation of time and cost of running one or more of the computer executable jobs based on the monitoring of the execution and the resource status,

determining uncertainty associated with the estimation of time and cost of incomplete jobs at least based on analyzing internal computing structures associated with historical jobs, wherein incomplete jobs comprises running and queued jobs,

allowing of updating, during the execution, the visualization associated with the generated plurality of execution scheduling options and scheduling options stored by the user using the sandbox environment with updates based on the estimation of time and cost and the uncertainty of remaining incomplete jobs.

12. The system of claim 11 , wherein the visualization comprises a plurality of charts displaying the plurality of execution scheduling options with a timeline, cost estimate and time estimate for completion, current execution time and status of currently executing jobs.

13. The system of claim 12 , wherein the visualization further comprises amount of computational resources used, uncertainty related to time of completion, uncertainty related to cost, wherein an alert is generated responsive to determining that one or more of the uncertainty related to time of completion and the uncertainty related to cost exceeds a predefined thresholds level.

14. The system of claim 13 , wherein the plurality of charts comprises at least one alternative scheduling option.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2018
From: NETTO, MARCO A. S.; SULTANUM, NICOLE B.; CUNHA, RENATO L. D. F.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045900/0763 →
Continuity (2)
Continuation 14924354 · Oct 27, 2015
Related Publication 20180276045A1 · Sep 27, 2018