Storage system and method for optimizing host-activated defragmentation and proactive garbage collection processes

US11972149B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11972149-B2
Application numberUS-202217874555-A
CountryUS
Kind codeB2
Filing dateJul 27, 2022
Priority dateJul 27, 2022
Publication dateApr 30, 2024
Grant dateApr 30, 2024

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 storage system is provided that performs a defragmentation operation or proactive garbage collection in its memory based on a command from a host. The command specifies which blocks in the memory should take part in the defragmentation operation by specifying a maximum amount of valid data that a block can have to qualify for defragmentation. That way, the storage system only performs defragmentation on those blocks that meet the validity criteria provided by the host. This can help improve performance of the storage system while reducing the degree of negative tradeoffs that may come with defragmentation or proactive garbage collection.

First claim

Opening claim text (preview).

What is claimed is: 1. A storage system comprising: a memory; and a controller coupled with the memory and configured to: receive, from a host, a command to perform host-activated defragmentation on the memory, wherein the command specifies a maximum block valid count threshold that is selected by the host after assessing a tradeoff between increased performance and reduction of memory lifetime associated with the maximum block valid count threshold; perform defragmentation only to those blocks in the memory whose amount of valid data is not greater than the maximum block valid count threshold; and receive, from the host, at least one subsequent command to perform host-activated defragmentation on the memory, wherein each subsequent command specifies a different maximum block valid count threshold; wherein the host dynamically decreases the maximum block valid count threshold in each subsequent command as the host progressively prioritizes memory lifetime over performance. 2. The storage system of claim 1 , wherein the controller is further configured to inform the host that the storage system supports the command. 3. The storage system of claim 1 , wherein the controller is further configured to provide the host with an indication of a maximum block valid count threshold supported by the storage system. 4. The storage system of claim 1 , wherein the controller is further configured to provide the host with a recommendation of the maximum block valid count threshold. 5. The storage system of claim 1 , wherein the controller is further configured to provide the host with an indication of a number of blocks of the memory that are expected to be relocated in each of a plurality of maximum block valid count thresholds. 6. The storage system of claim 1 , wherein the defragmentation is performed during an idle time of the memory. 7. The storage system of claim 1 , wherein the command further indicates a storage pool in the memory to which the defragmentation operation is to be performed. 8. The storage system of claim 1 , wherein the maximum block valid count threshold is based on a counter value, a memory fullness, and/or performance statistics. 9. The storage system of claim 1 , wherein the memory comprises a three-dimensional memory. 10. In a storage system comprising a memory, a method comprising: receiving, from a host, a command to perform host-activated defragmentation on the memory, wherein the command specifies a valid count criteria that is determined by host application usage after the host assesses a tradeoff between increased performance and reduction of memory lifetime associated with the valid count criteria; performing defragmentation only on those blocks in the memory that satisfy the valid count criteria; and receiving, from the host, at least one subsequent command to perform host-activated defragmentation on the memory, wherein each subsequent command specifies a different valid count criteria, and wherein the host dynamically decreases the valid count criteria in each subsequent command as the host progressively prioritizes memory lifetime over performance. 11. The method of claim 10 , further comprising informing the host that the storage system supports the command. 12. The method of claim 10 , further comprising providing the host with an indication of a maximum valid count criteria supported by the storage system. 13. The method of claim 10 , further comprising providing the host with a recommendation of the valid count criteria. 14. The method of claim 10 , further comprising providing the host with an indication of a number of blocks of the memory that are expected to be relocated in each of a plurality of valid count criteria. 15. The method of claim 10 , wherein the defragmentation is performed during an idle time of the memory. 16. The method of claim 10 , wherein the at least one subsequent command comprises a plurality of commands. 17. The method of claim 10 , wherein the command further indicates a storage pool in the memory to which the defragmentation operation is to be performed. 18. The method of claim 10 , wherein the valid count criteria is based on memory lifetime, memory health, a counter value, a memory fullness, and/or performance statistics. 19. A storage system comprising: a memory; means for receiving, from a host, a command to perform host-activated defragmentation on the memory, wherein the command specifies a selection of one of a predefined number of maximum block valid count threshold options that is selected by the host after assessing a tradeoff between increased performance and reduction of memory lifetime associated with each of the predefined number of maximum block valid count threshold options; means for performing defragmentation only to those blocks in the memory whose amount of valid data is not greater than the selected one of the predefined number of maximum block valid count threshold options; and means for receiving, from the host, at least one subsequent command to perform host-activated defragmentation on the memory, wherein each subsequent command specifies a different one of the predefined number of maximum block valid count threshold options, wherein the host dynamically selects a decreasing maximum block valid count threshold option in each subsequent command as the host progressively prioritizes memory lifetime over performance. 20. The storage system of claim 1 , wherein the maximum block valid count threshold is based on memory health.

Assignees

Inventors

Classifications

  • G06F3/0659Primary

    Command handling arrangements, e.g. command buffers, queues, command scheduling · CPC title

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

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

  • Garbage collection, i.e. reclamation of unreferenced memory · CPC title

  • Details of de-fragmentation performed by the file system (saving storage space on storage systems G06F3/0608; management of blocks in storage devices G06F3/064) · 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 US11972149B2 cover?
A storage system is provided that performs a defragmentation operation or proactive garbage collection in its memory based on a command from a host. The command specifies which blocks in the memory should take part in the defragmentation operation by specifying a maximum amount of valid data that a block can have to qualify for defragmentation. That way, the storage system only performs defragm…
Who is the assignee on this patent?
Western Digital Tech Inc
What technology area does this patent fall under?
Primary CPC classification G06F3/0659. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 30 2024 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).