Flush strategy for using DRAM as cache media system and method
US-10810123-B1 · Oct 20, 2020 · US
US11210229B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11210229-B2 |
| Application number | US-201916656806-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 18, 2019 |
| Priority date | Oct 31, 2018 |
| Publication date | Dec 28, 2021 |
| Grant date | Dec 28, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Techniques perform data writing. Such techniques involve: in response to receiving a first write request, searching a cache for a target address associated with the first write request; in response to missing of the target address in the cache, determining a page usage rate in the cache; and in response to determining that the page usage rate exceeds an upper threshold, performing the first write request with a first available page in the cache. The first available page is reclaimed, independent of a refresh cycle of the cache, in response to completing the performing of the first write request.
Opening claim text (preview).
We claim: 1. A method of data writing, comprising: in response to receiving a first write request, searching a cache for a target address associated with the first write request; in response to missing of the target address in the cache, determining a page usage rate in the cache; in response to determining that the page usage rate exceeds an upper threshold, performing the first write request with a first available page in the cache, wherein the first available page is reclaimed, independent of a refresh cycle of the cache, in response to completing the performing of the first write request; in response to determining that the page usage rate is below or equal to the upper threshold, determining whether the page usage rate exceeds a lower threshold, the upper threshold being greater than the lower threshold; in response to determining that the page usage rate exceeds the lower threshold, determining whether a current access speed of a storage device associated with the target address is below a speed threshold; and in response to the current access speed being below the speed threshold, determining whether a number of concurrent flushing requests of the storage device exceeds a concurrency number threshold; and in response to the number exceeding the concurrency number threshold, suspending the first write request. 2. The method of claim 1 , wherein performing the first write request comprises: writing, in the first available page, data associated with the first write request; sending, to a storage device associated with the target address, a request to write the data into the storage device; and in response to receiving from the storage device an indication of completing the writing of the data, marking the first available page as clean. 3. The method of claim 2 , further comprising: periodically determining a second write request from a set of suspended write requests, the second write request being suspended for a duration exceeding a predetermined time threshold; and performing the second write request with a second available page in the cache. 4. The method of claim 1 , further comprising: in response to the number being below or equal to the concurrency number threshold, performing the first write request; and in response to completing the first write request, waking up a third suspended write request associated with the storage device. 5. The method of claim 1 , further comprising: in response to determining that the page usage rate is below or equal to a lower threshold, writing, in a third available page of the cache, data associated with the first write request; marking the third available page as dirty; and reporting completion of performing the first write request. 6. A device for data writing, comprising: at least one processing unit; at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the apparatus to perform acts comprising: in response to receiving a first write request, searching a cache for a target address associated with the first write request; in response to missing of the target address in the cache, determining a page usage rate in the cache; in response to determining that the page usage rate exceeds an upper threshold, performing the first write request with a first available page in the cache, wherein the first available page is reclaimed, independent of a refresh cycle of the cache, in response to completing the performing of the first write request; in response to determining that the page usage rate is below or equal to the upper threshold, determining whether the page usage rate exceeds a lower threshold, the upper threshold being greater than the lower threshold; in response to determining that the page usage rate exceeds the lower threshold, determining whether a current access speed of a storage device associated with the target address is below a speed threshold; and in response to the current access speed being below the speed threshold, determining whether a number of concurrent flushing requests of the storage device exceeds a concurrency number threshold; and in response to the number exceeding the concurrency number threshold, suspending the first write request. 7. The device of claim 6 , wherein executing the first write request comprises: writing, in the first available page, data associated with the first write request; sending, to a storage device associated with the target address, a request to write the data into the storage device; and in response to receiving from the storage device an indication of completing writing of the data, marking the first available page as clean. 8. The device of claim 7 , wherein the acts further comprise: periodically determining a second write request from a set of suspended write requests, the second write request being suspended for a duration exceeding a predetermined time threshold; and performing the second write request with a second available page in the cache. 9. The device of claim 6 , wherein the acts further comprise: in response to the number being below or equal to the concurrency number threshold, performing the first write request; and in response to completing the first write request, waking up a third suspended write request associated with the storage device. 10. The device of claim 6 , wherein the acts further comprise: in response to determining that the page usage rate is below or equal to a lower threshold, writing, in a third available page of the cache, data associated with the first write request; marking the third available page as dirty; and reporting completion of performing the first write request. 11. A computer program product being stored in a non-transitory computer storage medium and comprising machine-executable instructions which, when executed by a device, cause the device to perform acts comprising: in response to receiving a first write request, searching a cache for a target address associated with the first write request; in response to missing of the target address in the cache, determining a page usage rate in the cache; in response to determining that the page usage rate exceeds an upper threshold, performing the first write request with a first available page in the cache, wherein the first available page is reclaimed, independent of a refresh cycle of the cache, in response to completing the performing of the first write request; in response to determining that the page usage rate is below or equal to the upper threshold, determining whether the page usage rate exceeds a lower threshold, the upper threshold being greater than the lower threshold; in response to determining that the page usage rate exceeds the lower threshold, determining whether a current access speed of a storage device associated with the target address is below a speed threshold; and in response to the current access speed being below the speed threshold, determining whether a number of concurrent flushing requests of the storage device exceeds a concurrency number threshold; and in response to the number exceeding the concurrency number threshold, suspending the first write request. 12. The computer program product of claim 11 , wherein executing the first write request comprises: writing, in the first available page, data associated with the first write request; sending, to a storage device associated with the target address, a request to write the data into the storage device; and in response to receiving from the storage device an indication of comple
Refresh operations in memory devices with an internal cache or data buffer · CPC title
with main memory updating (G06F12/0806 takes precedence) · CPC title
by exceeding a time limit, i.e. time-out, e.g. watchdogs · CPC title
Prefetch instructions; cache control instructions · CPC title
for performance assessment · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.