Systems and methods for identifying cloud configurations

US2018159727A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018159727-A1
Application numberUS-201615367935-A
CountryUS
Kind codeA1
Filing dateDec 2, 2016
Priority dateDec 2, 2016
Publication dateJun 7, 2018
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Provided are methods and systems for facilitating selection of a cloud configuration for deploying an application program with high accuracy, low overhead, and automatic adaptivity to a broad spectrum of applications and cloud configurations. The methods and systems are designed for building a performance model of cloud configurations, where the performance model is capable of distinguishing an optimal cloud configuration or a near-optimal cloud configuration from other possible configurations, but without requiring the model to be accurate for every cloud configuration. By tolerating the inaccuracy of the model for some configurations (but keeping the accuracy of the final result) it is possible to achieve both low overhead and automatic adaptivity: only a small number of samples may be needed and there is no need to embed application-specific insights into the modeling.

First claim

Opening claim text (preview).

What is claimed is: 1 . A computer-implemented method for facilitating selection of a cloud configuration for deploying an application program, the method comprising: receiving, at a processor, input for the application program; generating, by the processor, candidate cloud configurations for the application program based on the received input; determining iteratively, by the processor, performance data for at least one of the candidate cloud configurations, the performance data based on running the at least one candidate cloud configuration in at least one cloud platform; and updating, by the processor, a performance model for the application program based on the performance data for the respective at least one candidate cloud configuration until a confidence measure for the updated performance model satisfies a threshold. 2 . The method of claim 1 , further comprising: responsive to determining that the confidence measure for the updated performance model satisfies the threshold, selecting, by the processor, the respective candidate cloud configuration as the cloud configuration for deploying the application program. 3 . The method of claim 1 , wherein updating the performance model for the application program includes calculating a confidence measure for an objective function based on the performance data for the respective at least one candidate cloud configuration. 4 . The method of claim 1 , wherein the received input includes at least a representative workload for the application program, further comprising: installing the representative workload to at least one cloud platform. 5 . The method of claim 4 , wherein installing the representative workload to at least one cloud platform includes: creating a virtual machine in the at least one cloud platform; and installing the representative workload in the virtual machine. 6 . The method of claim 5 , further comprising: capturing a virtual machine image containing the installed workload. 7 . The method of claim 1 , wherein the received input includes at least one of: a representative workload for the application program, an objective, and a constraint. 8 . The method of claim 1 , wherein the received input includes a representative workload for the application program, an objective, and a constraint. 9 . A system for facilitating selection of a cloud configuration for deploying an application program, the system comprising: one or more processors; and a non-transitory computer-readable medium coupled to said one or more processors having instructions stored thereon that, when executed by said one or more processors, cause said one or more processors to perform operations comprising: receiving input for an application program, generating candidate cloud configurations for the application program based on the received input, determining, iteratively, performance data for at least one of the candidate cloud configurations, the performance data based on running the at least one candidate cloud configuration in at least one cloud platform, and updating a performance model for the application program based on the performance data for the respective at least one candidate cloud configuration until a confidence measure for the updated performance model satisfies a threshold. 10 . The system of claim 9 , wherein the one or more processors are caused to perform further operations comprising: responsive to determining that the confidence measure for the updated performance model satisfies the threshold, selecting the respective candidate cloud configuration as the cloud configuration for deploying the application program. 11 . The system of claim 9 , wherein updating the performance model for the application program includes calculating a confidence measure for an objective function based on the performance data for the respective at least one candidate cloud configuration. 12 . The system of claim 9 , wherein the received input includes at least a representative workload for the application program, the one or more processors are caused to perform further operations comprising: installing the representative workload to at least one cloud platform. 13 . The system of claim 12 , wherein the one or more processors are caused to perform further operations comprising: creating a virtual machine in the at least one cloud platform; and installing the representative workload in the virtual machine. 14 . The system of claim 13 , wherein the one or more processors are caused to perform further operations comprising: capturing a virtual machine image containing the installed workload. 15 . The system of claim 9 , wherein the received input includes at least one of: a representative workload for the application program, an objective, and a constraint. 16 . The system of claim 9 , wherein the received input includes a representative workload for the application program, an objective, and a constraint. 17 . A tangible, non-transitory computer readable medium, or media, storing machine readable instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving input for an application program, generating candidate cloud configurations for the application program based on the received input, determining, iteratively, performance data for at least one of the candidate cloud configurations, the performance data based on running the at least one candidate cloud configuration in at least one cloud platform, and updating a performance model for the application program based on the performance data for the respective at least one candidate cloud configuration until a confidence measure for the updated performance model satisfies a threshold. 18 . The non-transitory computer-readable medium or media of claim 17 , wherein the machine readable instructions, when executed by the one or more processors, cause the one or more processors to perform further operations comprising: responsive to determining that the confidence measure for the updated performance model satisfies the threshold, selecting the respective candidate cloud configuration as the cloud configuration for deploying the application program. 19 . The non-transitory computer-readable medium or media of claim 17 , wherein updating the performance model for the application program includes calculating a confidence measure for an objective function based on the performance data for the respective at least one candidate cloud configuration. 20 . The non-transitory computer-readable medium or media of claim 17 , wherein the received input includes at least a representative workload for the application program, the machine readable instructions, when executed by the one or more processors, cause the one or more processors to perform further operations comprising: installing the representative workload to at least one cloud platform.

Assignees

Inventors

Classifications

  • for predicting network behaviour · CPC title

  • H04L41/145Primary

    involving simulating, designing, planning or modelling of a network · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Network integration; Enabling network access in virtual machine instances · CPC title

  • Creating, deleting, cloning virtual machine instances · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2018159727A1 cover?
Provided are methods and systems for facilitating selection of a cloud configuration for deploying an application program with high accuracy, low overhead, and automatic adaptivity to a broad spectrum of applications and cloud configurations. The methods and systems are designed for building a performance model of cloud configurations, where the performance model is capable of distinguishing an…
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification H04L41/145. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Jun 07 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).