Controlling a dynamically instantiated cache

US9317430B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9317430-B2
Application numberUS-201414523655-A
CountryUS
Kind codeB2
Filing dateOct 24, 2014
Priority dateSep 30, 2011
Publication dateApr 19, 2016
Grant dateApr 19, 2016

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 change in workload characteristics detected at one tier of a multi-tiered cache is communicated to another tier of the multi-tiered cache. Multiple caching elements exist at different tiers, and at least one tier includes a cache element that is dynamically resizable. The communicated change in workload characteristics causes the receiving tier to adjust at least one aspect of cache performance in the multi-tiered cache. In one aspect, at least one dynamically resizable element in the multi-tiered cache is resized responsive to the change in workload characteristics.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for controlling a multi-tiered cache, the method comprising: receiving an indication of a change of a workload characteristic of a first workload accessing a first tier of the multi-tiered cache, wherein a second tier of the multi-tiered cache comprises a dynamically instantiated cache; determining that the first workload and a second workload overlap access to at least a portion of cached data in the multi-tiered cache, wherein the second workload accesses the portion of the cached data through the dynamically instantiated cache, and wherein the first workload does not access the portion of the cached data through the dynamically instantiated cache; and modifying at least one of a caching size and policy for the second workload in response to the change of the workload characteristic. 2. The method of claim 1 , wherein receiving the indication of the change of the workload characteristic comprises receiving at least one of a change in rate of cache miss, ratio of read versus write input/output (I/O) requests, I/O size, or ratio of random to sequential accesses. 3. The method of claim 1 , wherein receiving the indication of the change of the workload characteristic comprises receiving a change in working set in response to detecting access to a set of data not already cached. 4. The method of claim 1 , further comprising instantiating the dynamically instantiated cache on a virtual machine. 5. The method of claim 1 , further comprising: in response to determining that cached values in the dynamically instantiated cache are invalidated at a frequency above a predetermined or configurable threshold, de-provisioning or decreasing a size of the dynamically instantiated cache. 6. The method of claim 1 , further comprising: in response to determining that a size of the portion of the cached data of the multi-tiered cache in which the first workload and the second workload overlap access has decreased, increasing the size of the dynamically instantiated cache. 7. The method of claim 1 , wherein modifying one or both of the caching size and policy for the second workload comprises instantiating the dynamically instantiated cache as the second tier to increase at least a portion of a tier of the multi-tiered cache. 8. A system comprising: one or more processors; and a non-transitory computer-readable medium having instructions stored thereon that, when executed by the one or more processors, cause the system to: detect, by a first cache controller for a first tier of a multi-tiered cache, a change of a workload characteristic of a first workload, wherein a second tier of the multi-tiered cache comprises a dynamically instantiated cache; determine that the first workload and a second workload overlap access to at least a portion of cached data in the multi-tiered cache, wherein the second workload accesses the portion of the cached data through the dynamically instantiated cache, and wherein the first workload does not access the portion of the cached data through the dynamically instantiated cache; communicate the change of the workload characteristic from the first cache controller for the first tier to a second cache controller of the dynamically instantiated cache; and modify, by the second cache controller, at least one of a caching size and policy for the second workload in response to the change. 9. The system of claim 8 , wherein the change of the workload characteristic comprises at least one of a change in rate of cache miss, ratio of read versus write input/output (I/O) requests, I/O size, or ratio of random to sequential accesses. 10. The system of claim 8 , wherein the change of the workload characteristic comprises a change in working set, the change in working set determined in response to detection of an access to a set of data not already cached. 11. The system of claim 8 , wherein the dynamically instantiated cache is instantiated on a virtual machine. 12. The system of claim 8 , wherein the instructions further comprise instructions to cause the system to: de-provision or decrease a size of the dynamically instantiated cache in response to a determination that cached values in the dynamically instantiated cache are invalidated at a frequency above a predetermined or configurable threshold. 13. The system of claim 8 , wherein the instructions further comprise instructions to cause the system to: increase a size of the dynamically instantiated cache in response to a determination that a size of the portion of the cached data of the multi-tiered cache in which the first workload and the second workload overlap access has decreased. 14. A non-transitory computer-readable medium having instructions stored thereon, which when executed by one or more processors, cause the one or more processors to: receive an indication of a change of a workload characteristic of a first workload accessing a first tier of a multi-tiered cache, wherein a second tier of the multi-tiered cache comprises a dynamically instantiated cache; determine that the first workload and a second workload overlap access to at least a portion of cached data in the multi-tiered cache, wherein the second workload accesses the portion of the cached data through the dynamically instantiated cache, and wherein the first workload does not access the portion of the cached data through the dynamically instantiated cache; and modify at least one of a caching size and policy for the second workload in response to the change of the workload characteristic. 15. The non-transitory computer-readable medium of claim 14 , wherein the instructions that cause the one or more processors to receive the indication of the change of the workload characteristic include instructions that cause the one or more processors to receive at least one of a change in rate of cache miss, ratio of read versus write input/output (I/O) requests, I/O size, or ratio of random to sequential accesses. 16. The non-transitory computer-readable medium of claim 14 , wherein the indication of the change of the workload characteristic comprises a change in working set determined in response to detection of access to a set of data not already cached. 17. The non-transitory computer-readable medium of claim 14 , wherein the instructions further cause the one or more processors to instantiate the dynamically instantiated cache on a virtual machine. 18. The non-transitory computer-readable medium of claim 14 , wherein the instructions further cause the one or more processors to: de-provision or decrease a size of the dynamically instantiated cache in response to a determination that cached values in the dynamically instantiated cache are invalidated at a frequency above a predetermined or configurable threshold. 19. The non-transitory computer-readable medium of claim 14 , wherein the instructions further cause the one or more processors to: increase a size of the dynamically instantiated cache in response to a determination that a size of the portion of the cached data of the multi-tiered cache in which the first workload and the second workload overlap access has decreased. 20. The non-transitory computer-readable medium of claim 14 , wherein the instructions to cause the one or more processors to modify one or both of the caching size and policy for the second workload further comprise instructions to cause the one or more processors to instantiate the dynamically instantiated cache as the second tier to increase at least a portion of a tier of the

Assignees

Inventors

Classifications

  • Reconfiguration of cache memory · CPC title

  • using selective caching, e.g. bypass · CPC title

  • with multilevel cache hierarchies · CPC title

  • being configurable for different purposes, e.g. as cache or non-cache memory · CPC title

  • with a network or matrix configuration · 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 US9317430B2 cover?
A change in workload characteristics detected at one tier of a multi-tiered cache is communicated to another tier of the multi-tiered cache. Multiple caching elements exist at different tiers, and at least one tier includes a cache element that is dynamically resizable. The communicated change in workload characteristics causes the receiving tier to adjust at least one aspect of cache performan…
Who is the assignee on this patent?
Netapp Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0811. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 19 2016 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).