Adaptive multi-stream classification for data storage systems

US11853595B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11853595-B2
Application numberUS-202217723887-A
CountryUS
Kind codeB2
Filing dateApr 19, 2022
Priority dateApr 19, 2022
Publication dateDec 26, 2023
Grant dateDec 26, 2023

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 stream set classification process may be implemented to classify streams opened by a host device on a data storage device. The data storage device may internally classify the streams into different stream classifications using a set of performance metrics. Stream classifications that cause the data storage device to show the greatest gains when compared with a set of baseline performance metrics for the data storage device and/or when compared with other stream classifications, may be selected by the data storage device and/or the host device for subsequent write operations.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for classifying streams for a data storage device, comprising: receiving a plurality of streams from a host device; determining a performance metric for each stream in the plurality of streams, each performance metric being associated with a performance parameter from a set of predefined performance parameters; classifying the plurality of streams into a stream classification based, at least in part, on each performance metric, the stream classification including a first stream set and a second stream set, the first stream set including a first stream from the plurality of streams and the second stream set including a second stream from the plurality of streams; determining a gain measurement associated with the stream classification, the gain measurement being associated with a set of predefined gain criteria; and performing a write operation on a storage block of the data storage device using the stream classification based, at least in part, on the gain measurement. 2. The method of claim 1 , wherein the storage block is associated with the first stream set. 3. The method of claim 1 , further comprising comparing the gain measurement associated with the stream classification to a baseline efficiency score associated with the data storage device, the baseline efficiency score providing performance information of the data storage device prior to the data storage device performing the write operation using the stream classification. 4. The method of claim 1 , further comprising comparing the gain measurement associated with the stream classification to an expected gain measurement threshold. 5. The method of claim 4 , further comprising identifying a different stream classification when the gain measurement associated with the stream classification is below the expected gain measurement threshold. 6. The method of claim 1 , further comprising comparing the gain measurement associated with the stream classification to a gain measurement associated with a different stream classification. 7. The method of claim 6 , further comprising causing the data storage device to use the different stream classification when the gain measurement associated with the different stream classification exceeds the gain measurement associated with the stream classification. 8. A method for classifying streams for a data storage device, comprising: storing a first performance metric for a first stream in a plurality of streams associated with a host device, the first performance metric being associated with a performance parameter; storing a second performance metric for a second stream in the plurality of streams associated with the host device, the second performance metric being associated with the performance parameter; providing information corresponding to the first performance metric for the first stream in the plurality of streams to a remote device; providing information corresponding to the second performance metric for the second stream in the plurality of streams to the remote device; receiving a stream classification from the remote device, the stream classification including one or more stream sets, wherein: at least one of the one or more stream sets includes the first stream and the second stream; and the first stream and the second stream are included in the at least one of the one or more stream sets based, at least in part, on the first performance metric and the second performance metric; and performing a write operation on a storage block of the data storage device using the stream classification. 9. The method of claim 8 , wherein the information corresponding to the first performance metric and the information corresponding to the second performance metric are provided to the remote device via an application programming interface. 10. The method of claim 8 , wherein the performance parameter is selected from a group of performance parameters that includes one or more of: an amount of write operations and invalidations for a stream; an amount of rewrite invalidations and discard invalidations for a stream; a valid count percentage for a stream; an invalidated valid count percentage for a stream; a determined pattern of a stream; a determined number of free storage blocks associated with a stream; and a determined sequential read and sequential write ratio associated with a stream. 11. The method of claim 8 , further comprising providing a maximum number of streams supported by the data storage device to the remote device via an application programming interface. 12. The method of claim 11 , wherein a maximum number of stream sets in the stream classification is less than or equal to the maximum number of streams supported by the data storage device. 13. The method of claim 12 , wherein a maximum number of streams in each stream set is less than or equal to the maximum number of streams supported by the data storage device. 14. A data storage device, comprising: a controller; and a memory communicatively coupled to the controller and storing instructions which, when executed by the controller, perform operations, comprising: performing one or more write operations on storage blocks associated with the data storage device using a first stream classification, the first stream classification including a first stream set having one or more streams associated with a host device and a second stream set having one or more streams associated with the host device; determining a gain measurement associated with the first stream classification; comparing the gain measurement associated with the first stream classification to an expected gain measurement threshold; and performing subsequent write operations on the storage blocks associated with the data storage device using a second stream classification based on the gain measurement associated with the first stream classification falling below the expected gain measurement threshold. 15. The data storage device of claim 14 , wherein the expected gain measurement threshold is associated with a workload. 16. The data storage device of claim 14 , wherein the expected gain measurement threshold is associated with a profile. 17. The data storage device of claim 14 , wherein the gain measurement associated with the first stream classification is based, at least in part, on one or more gain criteria, the one or more gain criteria including one or more of: a ratio of released storage blocks versus new storage blocks that are allocated for write operations; a determined valid count distribution spread over all storage blocks in the data storage device; a determined count of free storage blocks in the data storage device; a determined frequency of garbage collection activities performed by the data storage device; a determined number of sequential read operations performed by the data storage device; and a determined write amplification factor associated with the data storage device. 18. The data storage device of claim 14 , wherein: each of the one or more streams in the first stream set have a performance metric that falls within a first specified range of a performance parameter; and each of the one or more streams in the second stream set have a performance metric that falls within a second specified range of the performance parameter. 19. The data storage device of claim 14 , further comprising instructions for performing the comparison of the gain measurement of the first stream classification to the expected gain measurement t

Assignees

Inventors

Classifications

  • G06F3/0655Primary

    Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices · CPC title

  • Improving or facilitating administration, e.g. storage management · CPC title

  • G06F3/0679Primary

    Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • Improving I/O performance · CPC title

  • in relation to life time, e.g. increasing Mean Time Between Failures [MTBF] · 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 US11853595B2 cover?
A stream set classification process may be implemented to classify streams opened by a host device on a data storage device. The data storage device may internally classify the streams into different stream classifications using a set of performance metrics. Stream classifications that cause the data storage device to show the greatest gains when compared with a set of baseline performance metr…
Who is the assignee on this patent?
Western Digital Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0655. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 26 2023 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).