CPU scheduler configured to support latency sensitive virtual machines

US9652280B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9652280-B2
Application numberUS-201615044035-A
CountryUS
Kind codeB2
Filing dateFeb 15, 2016
Priority dateAug 26, 2013
Publication dateMay 16, 2017
Grant dateMay 16, 2017

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.

A host computer has one or more physical central processing units (CPUs) that support the execution of a plurality of containers, where the containers each include one or more processes. Each process of a container is assigned to execute exclusively on a corresponding physical CPU when the corresponding container is determined to be latency sensitive. The assignment of a process to execute exclusively on a corresponding physical CPU includes the migration of tasks from the corresponding physical CPU to one or more other physical CPUs of the host system, and the directing of task and interrupt processing to the one or more other physical CPUs. Tasks of the process corresponding to the container are then executed on the corresponding physical CPU.

First claim

Opening claim text (preview).

We claim: 1. A method for assigning processing resources to a plurality of containers, the method comprising: determining that a first container of the plurality of containers is deemed to have a high level of latency sensitivity; responsive to determining that the first container is deemed to have the high level of latency sensitivity, affording the first container exclusive affinity to a first PCPU of a plurality of PCPUs; and due to the first container having exclusive affinity for the first PCPU, refraining from scheduling one or more tasks of containers of the plurality of containers other than the first container, to the first PCPU, when the first PCPU is idle. 2. The method of claim 1 , further comprising: scheduling tasks of containers of the plurality of containers to PCPUs of the plurality of PCPUs. 3. The method of claim 2 , wherein: the scheduling is based on latency sensitivity of the plurality of containers and on PCPU processing capacity granted to the plurality of containers. 4. The method of claim 1 , further comprising: determining that the first container is granted an amount of physical central processing unit (PCPU) processing capacity that is above a processing capacity threshold, wherein affording the first container exclusive affinity to the first PCPU is performed responsive to both determining that the first container is deemed to have the high level of latency sensitivity and determining that the first container is granted the amount of PCPU processing capacity that is above the processing capacity threshold. 5. The method of claim 4 , wherein: the processing capacity threshold comprises 100 percent of processing capacity of the first PCPU multiplied by a number of virtual central processing units assigned to the first container. 6. The method of claim 1 , further comprising: responsive to affording the first container exclusive affinity to the first PCPU, migrating a first task of a second container of the plurality of containers, from a first run queue including tasks for execution by the first PCPU to a second run queue including tasks for execution by a second PCPU of the plurality of PCPUs. 7. The method of claim 1 , wherein: determining that the first container is deemed to have the high level of latency sensitivity is performed in response to one of changing a latency sensitivity for the first container or powering on the first container. 8. The method of claim 1 , wherein: refraining from scheduling the one or more tasks of containers of the plurality of containers other than the first container to the first PCPU when the first PCPU is idle comprises assigning no tasks for the containers other than the first container, to the first PCPU, except for hardware interrupt handlers that are localized to the first PCPU. 9. The method of claim 1 , further comprising: responsive to affording the first container exclusive affinity to the first PCPU, disabling frequency scaling for the first PCPU. 10. A system, comprising: a plurality of physical central processing units (PCPUs) that support the execution of a plurality of containers; and a scheduler, configured to: determine that a first container of the plurality of containers is deemed to have a high level of latency sensitivity; responsive to determining that the first container is deemed to have the high level of latency sensitivity, affording the first container exclusive affinity to a first PCPU of a plurality of PCPUs; and due to the first container having exclusive affinity for the first PCPU, refraining from scheduling one or more tasks of containers of the plurality of containers other than the first container, to the first PCPU, when the first PCPU is idle. 11. The system of claim 10 , wherein the scheduler is further configured to: schedule tasks of containers of the plurality of containers to PCPUs of the plurality of PCPUs. 12. The system of claim 11 , wherein: the scheduling is based on latency sensitivity of the plurality of containers and on PCPU processing capacity granted to the plurality of containers. 13. The system of claim 10 , wherein the scheduler is further configured to: determine that the first container is granted an amount of physical central processing unit (PCPU) processing capacity that is above a processing capacity threshold, wherein affording the first container exclusive affinity to the first PCPU is performed responsive to both determining that the first container is deemed to have the high level of latency sensitivity and determining that the first container is granted the amount of PCPU processing capacity that is above the processing capacity threshold. 14. The system of claim 13 , wherein: the processing capacity threshold comprises 100 percent of processing capacity of the first PCPU multiplied by a number of virtual central processing units assigned to the first container. 15. The system of claim 10 , wherein the scheduler is further configured to: responsive to affording the first container exclusive affinity to the first PCPU, migrate a first task of a second container of the plurality of containers, from a first run queue including tasks for execution by the first PCPU to a second run queue including tasks for execution by a second PCPU of the plurality of PCPUs. 16. The system of claim 10 , wherein: the scheduler is configured to determine that the first container is deemed to have the high level of latency sensitivity in response to one of changing a latency sensitivity for the first container or powering on the first container. 17. The system of claim 10 , wherein: refraining from scheduling the one or more tasks of containers of the plurality of containers other than the first container to the first PCPU when the first PCPU is idle comprises assigning no tasks for the containers other than the first container, to the first PCPU, except for hardware interrupt handlers that are localized to the first PCPU. 18. The system of claim 10 , wherein the scheduler is further configured to: responsive to affording the first container exclusive affinity to the first PCPU, disable frequency scaling for the first PCPU. 19. A non-transitory computer-readable medium comprising instructions executable by a host computer, the host computer having one or more physical central processing units (PCPUs) that support the execution of a plurality of containers, the containers each including one or more processes, where the instructions, when executed, cause the host computer to perform a method of assigning processes to execute exclusively on a corresponding physical CPU, the method comprising: determining that a first container of the plurality of containers is deemed to have a high level of latency sensitivity; responsive to determining that the first container is deemed to have the high level of latency sensitivity, affording the first container exclusive affinity to a first PCPU of a plurality of PCPUs; and due to the first container having exclusive affinity for the first PCPU, refraining from scheduling one or more tasks of containers of the plurality of containers other than the first container, to the first PCPU, when the first PCPU is idle. 20. The non-transitory computer-readable medium of claim 19 , wherein the method further comprises: scheduling tasks of containers of the plurality of containers to PCPUs of the plurality of PCPUs.

Assignees

Inventors

Classifications

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 US9652280B2 cover?
A host computer has one or more physical central processing units (CPUs) that support the execution of a plurality of containers, where the containers each include one or more processes. Each process of a container is assigned to execute exclusively on a corresponding physical CPU when the corresponding container is determined to be latency sensitive. The assignment of a process to execute excl…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 16 2017 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).