Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment

US2018285166A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2018285166-A1
Application numberUS-201715797098-A
CountryUS
Kind codeA1
Filing dateOct 30, 2017
Priority dateMar 29, 2017
Publication dateOct 4, 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.

Aspects of this disclosure relate to monitoring use of shared resources to identify processes using such shared resources in a manner that may be affecting the performance of other processes. In one example, a method comprises: monitoring, by a computing device, usage metrics for a shared cache that is shared by one or more processors of the computing device; mapping the usage metrics to each of a plurality of virtual computing environments executing on the one or more processors, wherein the plurality of virtual computing environments includes a first virtual computing environment and a second virtual computing environment; determining, based on the mapped usage metrics, that the first virtual computing environment is using the shared cache in a manner that adversely affects the performance of the second virtual computing environment; and restricting, by the computing device, access to the shared cache by the first virtual computing environment.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: generating, by a policy controller, a policy to apply within a data center; distributing, by the policy controller, the policy to a policy agent executing on a computing device included within the data center, wherein the computing device includes processing circuitry having a plurality of processor cores; monitoring usage metrics relating to a resource shared by the plurality of processor cores; mapping a first subset of the usage metrics to a first virtual computing environment and mapping a second subset of the usage metrics to a second virtual computing environment, wherein both the first virtual computing environment and the second virtual computing environment execute on the processing circuitry; determining, based on the mapped usage metrics and the policy, that the first virtual computing environment is using the resource in a manner that adversely affects the performance of the second virtual computing environment; and responsive to determining, restricting access to the resource by the first virtual computing environment. 2 . The method of claim 1 , wherein the resource is a cache shared by the processor cores. 3 . The method of claim 1 , wherein the resource is a memory bus. 4 . The method of claim 2 , further comprising: prior to determining that the first virtual computing environment is using the cache in a manner that adversely affects the performance of the second virtual computing environment, allocating a substantially equal portion of the cache to each of the first virtual computing environment and the second virtual computing environment. 5 . The method of claim 2 , wherein the first virtual computing process has access to a portion of the cache, and wherein restricting access to the cache includes: reducing the portion of the shared cache accessible by the first virtual computing process. 6 . The method of claim 1 , wherein the first virtual computing environment includes a first process and a second process; wherein determining includes determining that the first process is using resource in a manner that adversely affects the performance of the second virtual computing environment; and wherein restricting includes restricting access to the resource by the first process without restricting access to the resource by the second process. 7 . The method of claim 1 , wherein monitoring usage metrics includes monitoring usage metrics using Resource Director Technology. 8 . The method of claim 1 , wherein the first virtual computing environment is a virtual machine executing on a hypervisor. 9 . The method of claim 1 , wherein the first virtual computing environment is a container executing on the computing device. 10 . A system comprising: a policy controller configured to generate a policy to apply within a data center; and a computing system comprising processing circuitry and one or more storage devices, wherein the processing circuitry includes a plurality of processor cores, and wherein the one or more storage devices store instructions that, when executed, configure the processing circuitry to: receive, from the policy controller, the policy, monitor usage metrics relating to a resource shared by the plurality of processor cores, map a first subset of the usage metrics to a first virtual computing environment and map a second subset of the usage metrics to a second virtual computing environment, wherein both the first virtual computing environment and the second virtual computing environment execute on the processing circuitry; determine, based on the mapped usage metrics and the policy, that the first virtual computing environment is using the resource in a manner that adversely affects the performance of the second virtual computing environment, and responsive to determining, restrict access to the resource by the first virtual computing environment. 11 . The computing system of claim 10 , wherein the resource is a cache shared by each of the processor cores. 12 . The computing system of claim 10 , wherein the resource is a memory bus. 13 . The computing system of claim 11 , wherein the instructions, when executed, further configure the processing circuitry to: prior to determining that the first virtual computing environment is using the cache in a manner that adversely affects the performance of the second virtual computing environment, allocate a substantially equal portion of the cache to each of the first virtual computing environment and the second virtual computing environment. 14 . The computing system of claim 11 , wherein the first virtual computing process has access to a portion of the cache, and wherein restricting access to the cache includes: reducing the portion of the shared cache accessible by the first virtual computing process. 15 . The computing system of claim 10 , wherein the first virtual computing environment includes a first process and a second process; wherein determining includes determining that the first process is using resource in a manner that adversely affects the performance of the second virtual computing environment; and wherein restricting includes restricting access to the resource by the first process without restricting access to the resource by the second process. 16 . The computing system of claim 10 , wherein monitoring usage metrics includes monitoring usage metrics using Resource Director Technology. 17 . The computing system of claim 10 , wherein the first virtual computing environment is a virtual machine executing on a hypervisor. 18 . The computing system of claim 10 , wherein the first virtual computing environment is a container executing on the computing device. 19 . A computer readable storage medium comprising instructions that, when executed, configure processing circuitry of a computing system to: receive, from the policy controller, a policy; monitor usage metrics relating to a resource shared by a plurality of processor cores included within the processing circuitry; map the usage metrics to each of a plurality of virtual computing environments executing on the processing circuitry, wherein the plurality of virtual computing environments includes a first virtual computing environment and a second virtual computing environment; determine, based on the mapped usage metrics and the policy, that the first virtual computing environment is using the resource in a manner that adversely affects the performance of the second virtual computing environment; and restrict, by the computing device, access to the resource by the first virtual computing environment. 20 . The computer readable storage medium of claim 19 , wherein the resource is a cache shared by each of the processor cores. 21 . The computer readable storage medium of claim 19 , wherein the resource is a memory bus. 22 . The computer readable storage medium of claim 20 , wherein the instructions, when executed, further configure the processing circuitry to: prior to determining that the first virtual computing environment is using the cache in a manner that adversely affects the performance of the second virtual computing environment, allocate a substantially equal portion of the cache to each of the first virtual computing environment and the second virtual computing environment. 23 . The computer readable storage medium of claim 20 , wherein the first virtual computing process has access to a

Assignees

Inventors

Classifications

  • for multiprocessing or multitasking · CPC title

  • the resource being the memory · CPC title

  • Performance evaluation by statistical analysis · CPC title

  • Starting, stopping, suspending or resuming virtual machine instances · CPC title

  • where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems (multiprogramming arrangements G06F9/46; allocation of resources G06F9/50) · 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 US2018285166A1 cover?
Aspects of this disclosure relate to monitoring use of shared resources to identify processes using such shared resources in a manner that may be affecting the performance of other processes. In one example, a method comprises: monitoring, by a computing device, usage metrics for a shared cache that is shared by one or more processors of the computing device; mapping the usage metrics to each o…
Who is the assignee on this patent?
Juniper Networks 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 Thu Oct 04 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).