Method, device and computer program product for data writing

US11210229B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11210229-B2
Application numberUS-201916656806-A
CountryUS
Kind codeB2
Filing dateOct 18, 2019
Priority dateOct 31, 2018
Publication dateDec 28, 2021
Grant dateDec 28, 2021

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.

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.

First claim

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

Assignees

Inventors

Classifications

  • 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

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 US11210229B2 cover?
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 wri…
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F12/0882. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 28 2021 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 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).