IP Library Granted Patent US 8,661,438
Granted Patent B2
US 8,661,438 · App. 13/595,372 · Granted Feb 25, 2014

Virtualization planning system that models performance of virtual machines allocated on computer systems

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 8,661,438
App. No.
13/595,372
Granted
Feb 25, 2014
Kind
B2
Abstract

The embodiments related to systems and methods for virtualization planning. A set of target machines may employ one or more virtualization technologies to divide resources of the given target computer system into multiple execution environments for virtual machines. Overhead profiles are determined based on a configuration of a given target computer system, the virtualization technology, and work performed by the virtual machines. The overhead consumed by the virtualization technologies is estimated for the proposed allocation of virtual machines. Performance of the proposed allocation of virtual machines is then modeled and various performance measures are provided.

Claims (31)

1. A virtualization planning system configured to model performance of a proposed allocation of virtual machines among a set of target computer systems running one or more virtualization technologies, wherein the virtualization technologies consume a portion of processing resources of the target computer systems as overhead, said virtualization planning system comprising:

a database stored on a computer-readable medium comprising data for a plurality of overhead profiles, wherein each profile is based on a configuration of a given target computer system and one of a plurality of virtualization technologies that divide resources of the given target computer system into multiple execution environments, and wherein each profile is based on measurements of the overhead experienced by the given target computer system under a variety of operating conditions; and

a performance modeling engine, coupled to the database, configured to estimate an overhead consumed by the virtualization technologies for the proposed allocation of virtual machines based on an overhead profile selected from the database and determine at least one performance measure of the set of target computer systems based on the estimated overhead.

2. The system of claim 1 , wherein the performance modeling engine is configured to estimate the overhead measure based on a multi-variate interpolation of one or more of the overhead profiles.

3. The system of claim 1 , wherein the performance modeling engine is configured to estimate the overhead measure based on a non-linear interpolation of one or more of the overhead profiles.

4. The system of claim 1 , wherein the configuration of the given target computer system comprises a number of physical processors, cores per processor, threads per core, CPU speed, priority scheme, and memory size.

5. The system of claim 1 , wherein the performance modeling engine is configured to provide a performance measure indicating a minimum service level associated with each of one or more of the virtual machines.

6. The system of claim 1 , wherein the performance modeling engine is configured to provide a performance measure indicating a response time associated with each of one or more tasks performed by the virtual machines.

7. A computer-implemented virtualization modeling system, said system comprising:

a user interface configured to receive a proposed allocation of jobs among one or more virtual machines running on a set of target computer systems based on virtualization technologies that divide the resources of the set of target computer systems into multiple execution environments for the virtual machines; and

a processor configured to select, for each target computer system, an overhead profile that indicates overhead consumed by one or more virtual machines running on the target computer system based on a configuration of the target computer system and one of a plurality of different virtualization technologies, estimate an overhead consumed by the virtual machines in performing the proposed allocation based on the selected overhead profile, estimate at least one performance measure for the virtual machines based on the estimated overhead, and provide an output to the user interface indicating the estimated performance of the virtual machines.

8. The system of claim 7 , wherein the user interface is configured to receive a second proposed allocation of jobs among the one or more target virtual machines among the one or more target systems, and wherein the processor is configured to provide an estimated performance of the virtual machines of the second proposed allocation of jobs.

9. The system of claim 7 , wherein the processor is configured to determine a performance of the virtual machines based on one or more performance criteria.

10. The system of claim 9 , wherein the user interface is configured to identify virtual machines that do not satisfy the one or more performance criteria.

11. The system of claim 9 , wherein the performance criteria includes a minimum service level associated with each of one or more of the virtual machines.

12. The system of claim 9 , wherein the performance criteria includes a response time associated with each of one or more tasks for the jobs.

13. The system of claim 7 , wherein the user interface is configured to display respective icons for each of the virtual machines and receive a proposed allocation responsive to user input of moving an icon of the virtual machine.

14. A method modeling performance of virtual machines allocated among one or more target computer systems, said method comprising:

measuring, for a plurality of different virtualization technologies and target computer systems, overhead consumed by virtual machines for a given configuration of a target computer system and a given virtualization technology under a variety of operating conditions;

determining a plurality of overhead profiles, wherein each overhead profile is based on the measured overhead experienced by the given target computer system under a variety of operating conditions, a given virtualization technology, and a given configuration of the target computer system;

estimating, for a proposed allocation of virtual machines among the target computer systems, overhead consumed by the virtual machines in performing a set of jobs based on the stored overhead profiles; and

modeling performance of the virtual machines based on the estimated overhead and at least one performance measure.

15. The method of claim 14 , wherein the given configuration of the target computer system relates to a number of virtual machines running on the target computer system.

16. The method of claim 14 , wherein the given configuration of the target computer system relates to a utilization of each virtual machine.

17. The method of claim 14 , wherein the given configuration of the target computer system relates to a number of physical processors.

18. The method of claim 14 , wherein the given configuration of the target computer system relates to a core per processor.

19. The method of claim 14 , wherein the given configuration of the target computer system relates to threads per core.

20. The method of claim 14 , wherein the given configuration of the target computer system relates to a priority scheme employed by the target computer system.

21. The method of claim 14 , wherein the given configuration of the target computer system relates to a memory size of a memory in the target computer system.

22. The method of claim 14 , wherein determining the overhead profile comprises a multi-variate interpolation based on values from other overhead profiles.

23. The method of claim 14 wherein determining the overhead profile comprises a non-linear interpolation based on values from other overhead profiles.

Assignments (18)
RELEASE OF SECURITY INTEREST Recorded Aug 11, 2023
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC; RIVERBED HOLDINGS, INC.
Reel/Frame 064673/0739 →
CHANGE OF NAME Recorded Feb 18, 2022
From: RIVERBED TECHNOLOGY, INC.
To: RIVERBED TECHNOLOGY LLC
Reel/Frame 059232/0551 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0169 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0046 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0108 →
SECURITY INTEREST Recorded Dec 10, 2021
From: RIVERBED TECHNOLOGY LLC (FORMERLY RIVERBED TECHNOLOGY, INC.); ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
Reel/Frame 058486/0216 →
PATENT SECURITY AGREEMENT Recorded Oct 27, 2021
From: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 057943/0386 →
PATENT SECURITY AGREEMENT SUPPLEMENT - FIRST LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 057810/0502 →
PATENT SECURITY AGREEMENT SUPPLEMENT - SECOND LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 057810/0559 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORED AT REEL 056397, FRAME 0750 Recorded Oct 13, 2021
From: MACQUARIE CAPITAL FUNDING LLC
To: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 057983/0356 →
SECURITY INTEREST Recorded May 26, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MACQUARIE CAPITAL FUNDING LLC
Reel/Frame 056397/0750 →
PATENT SECURITY AGREEMENT Recorded Mar 5, 2021
From: RIVERBED TECHNOLOGY, INC.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 055514/0249 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY NAME PREVIOUSLY RECORDED ON REEL 035521 FRAME 0069. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST IN PATENTS. Recorded Jun 2, 2015
From: JPMORGAN CHASE BANK, N.A.
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035807/0680 →
SECURITY INTEREST Recorded May 1, 2015
From: RIVERBED TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 035561/0363 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 28, 2015
From: BARCLAYS BANK PLC
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035521/0069 →
PATENT SECURITY AGREEMENT Recorded Dec 27, 2013
From: RIVERBED TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032421/0162 →
RELEASE OF PATENT SECURITY INTEREST Recorded Dec 26, 2013
From: MORGAN STANLEY & CO. LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 032113/0425 →
SECURITY AGREEMENT Recorded Dec 20, 2012
From: RIVERBED TECHNOLOGY, INC.; OPNET TECHNOLOGIES, INC.
To: MORGAN STANLEY & CO. LLC
Reel/Frame 029646/0060 →