Cloud compute scheduling using a heuristic contention model

US11212235B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11212235-B2
Application numberUS-202016875597-A
CountryUS
Kind codeB2
Filing dateMay 15, 2020
Priority dateDec 24, 2013
Publication dateDec 28, 2021
Grant dateDec 28, 2021

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.

Technologies for contention-aware cloud compute scheduling include a number of compute nodes in a cloud computing cluster and a cloud controller. Each compute node collects performance data indicative of cache contention on the compute node, for example, cache misses per thousand instructions. Each compute node determines a contention score as a function of the performance data and stores the contention score in a cloud state database. In response to a request for a new virtual machine, the cloud controller receives contention scores for the compute nodes and selects a compute node based on the contention score. The cloud controller schedules the new virtual machine on the selected compute node. The contention score may include a contention metric and a contention score level indicative of the contention metric. The contention score level may be determined by comparing the contention metric to a number of thresholds. Other embodiments are described and claimed.

First claim

Opening claim text (preview).

The invention claimed is: 1. A storage device or storage disk comprising instructions that, when executed by a cloud controller, cause the cloud controller to: acquire performance data based on respective hardware counter values associated with two or more processor cores, the respective hardware counter values read during execution of one or more virtual machines on respective ones of the two or more processor cores; determine, for the respective ones of the two or more processor cores respective contention scores based on the performance data corresponding to the respective hardware counter values; select, based on the respective contention scores and in response to receipt of a request for a new virtual machine, a first processor core of the two or more processor cores for the new virtual machine; and schedule the new virtual machine on the first processor core. 2. The storage device or storage disk of claim 1 , wherein the instructions, when executed, cause the cloud controller to select the first processor core in response to the first processor core including a lowest contention score of the respective contention scores for the respective ones of the two or more processor cores. 3. The storage device or storage disk of claim 1 , wherein the performance data includes respective indications of respective rates of cache misses per number of instructions associated with the respective ones of the two or more processor cores. 4. The storage device or storage disk of claim 1 , wherein the new virtual machine is a first virtual machine and the instructions, when executed, cause the cloud controller to: suspend the first virtual machine assigned to the first processor core; select, based on the respective contention scores, a second processor core of the two or more processor cores to which to assign the first virtual machine; and reassign the first virtual machine assigned to the first processor core to the second processor core. 5. The storage device or storage disk of claim 1 , wherein the performance data includes respective indications of respective rates of cache misses per number of instructions for at least two virtual machines executed on a second processor core of the two or more processor cores. 6. The storage device or storage disk of claim 1 , wherein the instructions, when executed, cause the cloud controller to read the respective contention scores from a cloud state database. 7. The storage device or storage disk of claim 1 , wherein the instructions, when executed, cause the cloud controller to identify available compute nodes, the available compute nodes including the two or more processor cores. 8. The storage device or storage disk of claim 1 , wherein the first processor core of the two or more processor cores is associated with a first independent processor and a second processor core of the two or more processor cores is associated with a second independent processor. 9. A cloud controller of a cloud computing cluster, the cloud controller comprising: processor circuitry; memory coupled to the processor circuitry, the memory including instructions that, when executed by the processor circuitry, cause the processor circuitry to: acquire performance data based on respective hardware counter values associated with two or more processor cores, the respective hardware counter values read during execution of one or more virtual machines on respective ones of the two or more processor cores; determine, for the respective ones of the two or more processor cores respective contention scores based on the performance data corresponding to the respective hardware counter values; select, based on the respective contention scores and in response to receipt of a request for a new virtual machine, a first processor core of the two or more processor cores for the new virtual machine; and schedule the new virtual machine on the first processor core. 10. The cloud controller of claim 9 , wherein the processor circuitry is to select the first processor core in response to the first processor core including a lowest contention score of the respective contention scores for the respective ones of the two or more processor cores. 11. The cloud controller of claim 9 , wherein the performance data includes respective indications of respective rates of cache misses per number of instructions associated with the respective ones of the two or more processor cores. 12. The cloud controller of claim 9 , wherein the new virtual machine is a first virtual machine and the processor circuitry is to: suspend the first virtual machine assigned to the first processor core; select, based on the respective contention scores, a second processor core of the two or more processor cores to which to assign the first virtual machine; and reassign the first virtual machine assigned to the first processor core to the second processor core. 13. The cloud controller of claim 9 , wherein the performance data includes respective indications of respective rates of cache misses per number of instructions for at least two virtual machines executed on a second processor core of the two or more processor cores. 14. The cloud controller of claim 9 , wherein the processor circuitry is to read the respective contention scores from a cloud state database. 15. The cloud controller of claim 9 , wherein the processor circuitry is to identify available compute nodes, the available compute nodes including the two or more processor cores. 16. The cloud controller of claim 9 , wherein the first processor core of the two or more processor cores is associated with a first independent processor and a second processor core of the two or more processor cores is associated with a second independent processor. 17. A method comprising: acquiring, by a cloud controller, performance data based on respective hardware counter values associated with two or more processor cores, the respective hardware counter values read during execution of one or more virtual machines on respective ones of the two or more processor cores; determining, by the cloud controller and for the respective ones of the two or more processor cores, respective contention scores based on the performance data corresponding to the respective hardware counter values; in response to receipt of a request for a new virtual machine, selecting, by the cloud controller and based on the respective contention scores, a first processor core of the two or more processor cores for the new virtual machine; and scheduling, by the cloud controller, the new virtual machine on the first processor core. 18. The method of claim 17 , further including selecting the first processor core in response to the first processor core including a lowest contention score of the respective contention scores for the respective ones of the two or more processor cores. 19. The method of claim 17 , wherein the performance data includes respective indications of respective rates of cache misses per number of instructions associated with the respective ones of the two or more processor cores. 20. The method of claim 17 , wherein the new virtual machine is a first virtual machine and the method further includes: suspending, by the cloud controller, the first virtual machine assigned to the first processor core; selecting, by the cloud controller and based on the respective contention scores, a second processor core of the two or more processor cores to which to assign the first virtual machine; and reassign the first virtua

Assignees

Inventors

Classifications

  • H04L47/70Primary

    Admission control; Resource allocation · CPC title

  • G06F9/505Primary

    considering the load · CPC title

  • Storing data temporarily at an intermediate stage, e.g. caching · CPC title

  • the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

  • for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · 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 US11212235B2 cover?
Technologies for contention-aware cloud compute scheduling include a number of compute nodes in a cloud computing cluster and a cloud controller. Each compute node collects performance data indicative of cache contention on the compute node, for example, cache misses per thousand instructions. Each compute node determines a contention score as a function of the performance data and stores the c…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification H04L47/70. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 28 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).