IP Library Granted Patent US 9,170,840
Granted Patent B2
US 9,170,840 · App. 13/287,691 · Granted Oct 27, 2015

Duration sensitive scheduling in a computing environment

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 9,170,840
App. No.
13/287,691
Granted
Oct 27, 2015
Kind
B2
Abstract

Duration sensitive scheduling in a computing environment, the computing environment including a computer configured to support a virtual machine, including: identifying, by a duration sensitive scheduler, a processing job to be executed by the virtual machine, wherein the virtual machine includes an entitlement specification that identifies physical resources of the computer that are designated for exclusive use by the virtual machine; determining, by the duration sensitive scheduler, a duration required to complete the processing job; identifying, by the duration sensitive scheduler, a time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine; scheduling, by the duration sensitive scheduler, the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine.

Claims (31)

1. A method comprising:

by a duration sensitive scheduler on a computing device,

identifying a processing job to be executed by a virtual machine supported by a computer in a computing environment, wherein the virtual machine includes an entitlement specification;

determining, based on the entitlement specification in the virtual machine, physical resources of the computer that are designated for exclusive use by the virtual machine;

determining a duration required to complete the processing job on the virtual machine by inspecting each individual instruction of the processing job and estimating an amount of time required to execute the processing job on the virtual machine in view of an amount of physical resources to be made available;

associating the duration required to complete the processing job with metadata describing the virtual machine including creating an entry in the metadata comprising a unique identifier for the processing job and a number and type of instructions included in the processing job;

in response to determining the duration required and associating with the metadata, identifying a time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine;

scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine.

2. The method of claim 1 wherein identifying the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

3. The method of claim 1 wherein scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

4. The method of claim 1 wherein the processing job is data storage backup operation.

5. An apparatus comprising a computing device, a computer processor, a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause a duration sensitive scheduler to carry out the steps of:

identifying a processing job to be executed by a virtual machine supported by a computer in a computing environment, wherein the virtual machine includes an entitlement specification;

determining, based on the entitlement specification in the virtual machine, physical resources of the computer that are designated for exclusive use by the virtual machine;

determining a duration required to complete the processing job on the virtual machine by inspecting each individual instruction of the processing job and estimating an amount of time required to execute the processing job on the virtual machine in view of an amount of physical resources to be made available;

associating the duration required to complete the processing job with metadata describing the virtual machine including creating an entry in the metadata comprising a unique identifier for the processing job and a number and type of instructions included in the processing job;

in response to determining the duration required and associating with the metadata, identifying a time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine;

scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine.

6. The apparatus of claim 5 wherein identifying the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

7. The apparatus of claim 5 wherein scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

8. The apparatus of claim 5 wherein the processing job is data storage backup operation.

9. A computer program product including a computer readable medium, where the computer readable medium is non-transitory, the computer program product comprising computer program instructions that, when executed, cause a computer using a duration sensitive scheduler to carry out the steps of:

identifying a processing job to be executed by a virtual machine supported by a computer in a computing environment, wherein the virtual machine includes an entitlement specification;

determining, based on the entitlement specification in the virtual machine, physical resources of the computer that are designated for exclusive use by the virtual machine;

determining a duration required to complete the processing job on the virtual machine by inspecting each individual instruction of the processing job and estimating an amount of time required to execute the processing job on the virtual machine in view of an amount of physical resources to be made available;

associating the duration required to complete the processing job with metadata describing the virtual machine including creating an entry in the metadata comprising a unique identifier for the processing job and a number and type of instructions included in the processing job;

in response to determining the duration required and associating with the metadata, identifying a time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine;

scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine.

10. The computer program product of claim 9 wherein identifying the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

11. The computer program product of claim 9 wherein scheduling the processing job for execution on the virtual machine during the time slot at which the physical resources of the computer that are identified in the entitlement specification are available for use by the virtual machine further comprises verifying that the processing job can complete on the virtual machine within the time slot.

12. The computer program product of claim 9 wherein the processing job is data storage backup operation.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 050300/0947 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
To: LENOVO INTERNATIONAL LIMITED
Reel/Frame 037696/0522 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2011
From: BOZEK, JAMES J.; HANSSON, NILS P.; SUFFERN, EDWARD S.; WOOLDRIDGE, JAMES L.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 027164/0168 →