Methods for cache insertion and cache eviction in a cache system that includes a reverse cache and a main cache

US12499059B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12499059-B2
Application numberUS-202418644246-A
CountryUS
Kind codeB2
Filing dateApr 24, 2024
Priority dateMay 17, 2022
Publication dateDec 16, 2025
Grant dateDec 16, 2025

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 cache system that includes a reverse cache and a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints and index values, which are representations of or that identify data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the reverse cache, data corresponding to the entry is promoted to the main cache. The main cache is configured to evict entries using recency, frequency, and time-adjustments. The main cache and the reverse cache may be similarly configured with a recent list and a frequent list but operate differently.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method, comprising: operating a reverse cache that is configured to identify data to insert into a main cache, wherein the reverse cache is configured to store entries representing the data and wherein the main cache stores data, wherein operating the reverse cache includes: determining whether an entry for a requested data is present in the reverse cache; adding the entry for the requested data to the reverse cache when the entry is not present in the reverse cache, wherein the entry is adjusted in the reverse cache when the entry is present in the reverse cache; and promoting a candidate entry from the reverse cache to the main cache; and adjusting metadata for entries in the main cache to account for recency values and frequency values associated with the entries in the main cache, wherein the adjusted metadata includes adjusted timestamps, wherein timestamps for entries that have been accessed more frequently and/or more recently that other entries are adjusted differently than timestamps for entries that have been accessed less frequently and/or less recently; and evicting entries from the main cache based on the adjusted metadata. 2 . The method of claim 1 , wherein the metadata comprises timestamps and wherein the entries comprise an index value or a fingerprint. 3 . The method of claim 2 , wherein adjusting the metadata includes adjusting at least some of the timestamps using an adjusting factor to generate adjusted timestamps. 4 . The method of claim 3 , further comprising identifying eviction candidate entries based on the adjusted timestamps. 5 . The method of claim 4 , wherein the adjusting factor is configured such that entries less likely to be accessed are evicted from the main cache. 6 . The method of claim 2 , wherein the metadata includes a recency value, a frequency value, a timestamp, and an adjusted timestamp, wherein evicting entries from the main cache further comprises adjusting timestamps of each of the entries to generate adjusted timestamps for each of the entries. 7 . The method of claim 6 , further comprising promoting the candidate entry when the reverse cache is full and a new entry is added to the reverse cache. 8 . The method of claim 6 , further comprising promoting the candidate entry when the candidate entry has been accessed a threshold number of times. 9 . The method of claim 2 , wherein the main cache and the reverse cache each comprise lists, the lists including a recent list and a frequency list, wherein the lists of the reverse cache are operated differently from the lists of the main cache. 10 . The method of claim 1 , further comprising identifying the candidate entry based on frequency of access and/or recency of access. 11 . The method of claim 1 , wherein the reverse cache comprises a frequent list and a frequency list, further comprising, when the entry is present in the reverse cache, moving the entry to the frequent list when the entry is in a recent list, wherein the candidate entry promoted to the main cache is in the frequent list. 12 . The method of claim 11 , further comprising evicting an entry from the recent list of the reverse cache after a period of time and when the entry is not accessed a second time. 13 . The method of claim 12 , further comprising moving the entry from the recent list to the frequent list when the entry is in the recent list and is accessed a second time. 14 . A method comprising: operating a reverse cache that is configured to identify data to insert into a main cache, wherein the reverse cache is configured to store entries representing the data and wherein the main cache stores data, wherein operating the reverse cache includes: determining whether an entry for a requested data is present in a reverse cache; when the requested data is not present in the reverse cache, promoting a candidate entry to the main cache and adding the entry for the requested data to the reverse cache, wherein the entry is adjusted in the reverse cache when the entry is present in the reverse cache; when the candidate entry is not promoted to the main cache, evicting an old entry from the reverse cache and adding the entry for the requested data to the reverse cache, wherein the old entry is not evicted if the reverse cache has space for adding the entry, wherein entries are evicted from the main cache and from the reverse cache based on recency of access, frequency of access, and an adjustment factor configured to prevent entries that are more likely to be accessed from being evicted, wherein the adjustment factor changes timestamps, wherein timestamps for entries that have been accessed more frequently and/or more recently that other entries are adjusted differently than timestamps for entries that have been accessed less frequently and/or less recently. 15 . The method of claim 14 , further comprising managing the main cache by adjusting metadata for entries in the main cache to account for recency values and frequency values associated with the entries in the main cache and evicting entries from the main cache based on the adjusted metadata. 16 . The method of claim 15 , wherein the metadata comprises timestamps, wherein adjusting the metadata includes changing at least some of the timestamps using an adjusting factor to generate adjusted timestamps, wherein eviction candidates from the main cache are identified based on the adjusted timestamps. 17 . The method of claim 16 , wherein the adjusting factor is configured such that entries less likely to be accessed are evicted. 18 . The method of claim 17 , wherein the metadata includes a recency value, a frequency value, a timestamp, and an adjusted timestamp, wherein evicting entries from the main cache further comprises adjusting timestamps of each of the entries to generate adjusted timestamps for each of the entries. 19 . The method of claim 14 , wherein the reverse cache comprises a frequent list and a frequency list, further comprising, when the entry is present in the reverse cache, moving the entry to the frequent list when the entry is in a recent list, wherein the candidate entry promoted to the main cache is in the frequent list, wherein the entries comprise an index value or a fingerprint.

Assignees

Inventors

Classifications

  • with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list · CPC title

  • using clearing, invalidating or resetting means · CPC title

  • Performance improvement · CPC title

  • Space efficiency improvement · CPC title

  • using selective caching, e.g. bypass · 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 US12499059B2 cover?
A cache system that includes a reverse cache and a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints and index values, which are representations of or that identify data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the rev…
Who is the assignee on this patent?
Dell Products Lp
What technology area does this patent fall under?
Primary CPC classification G06F12/128. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 16 2025 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 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).