Systems and methods of write cache flushing
US-2016147671-A1 · May 26, 2016 · US
US9760281B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9760281-B2 |
| Application number | US-201514671968-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 27, 2015 |
| Priority date | Mar 27, 2015 |
| Publication date | Sep 12, 2017 |
| Grant date | Sep 12, 2017 |
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.
In one embodiment, sequential write stream management is employed to improve the sequential nature of write data placed in a storage such as a solid state drive, notwithstanding intermingling of write commands from various sequential and nonsequential streams from multiple processor nodes in a system. In one embodiment, write data from an identified sequential write stream is placed in a storage area assigned to that particular identified sequential write stream. In another aspect, detected sequential write streams are identified as a function of write velocity of the detected stream. Other aspects are described herein.
Opening claim text (preview).
What is claimed is: 1. An apparatus for use with a plurality of command submission queues of a plurality of processor nodes, comprising: a solid-state storage drive including nonvolatile storage having a plurality of regions of storage space, and a storage controller having a common command queue, said controller configured to: queue a plurality of write commands from the plurality of command submission queues in the common command queue; and execute write commands queued in the common command queue; wherein the controller has sequential write stream identification logic which includes sequential write stream detection logic configured to detect first and second sequential write streams in the write commands, wherein the sequential write stream identification logic is configured to identify the detected first and second sequential write streams as first and second identified sequential write streams, respectively, as a function of characteristics of the first and second detected sequential write streams including a write velocity characteristic, and wherein the controller further has sequential write stream aggregation logic configured to write write data of commands being executed into different sequential write stream regions of the solid-state storage as a function of the write stream identifying, including aggregating write data of the first identified sequential write stream in a first sequential write stream storage region of the solid-state storage, and aggregating write data of the second identified sequential write stream in a second sequential write stream storage region of the solid-state storage. 2. The apparatus of claim 1 wherein the solid state storage drive further includes transfer buffer storage having sequential write stream buffer partitions, and the controller further has transfer buffer partition write stream data aggregation logic configured to write write data of commands being executed into different sequential write stream buffer partitions of the transfer buffer storage as a function of the write stream identifying by the sequential write stream identification logic, including aggregating write data of the first identified sequential write stream in a first sequential write stream buffer partition of the transfer buffer storage, and aggregating write data of the second identified sequential write stream in a second sequential write stream buffer partition of the transfer buffer storage. 3. The apparatus of claim 1 wherein the sequential write stream detection logic is further configured to detect a third sequential write stream in the write command, and the sequential write stream identification logic is further configured to identify the detected third sequential write stream as the first identified sequential write streams as a function of characteristics of the first and third detected sequential write streams, and the storage controller is further configured so that the writing write data of commands being executed into different regions of the solid-state storage as a function of the write stream identifying, includes aggregating write data of the third detected sequential write stream in the first region of the solid-state storage. 4. The apparatus of claim 3 wherein the sequential write stream identification logic which further includes sequential write stream write velocity detection logic configured to determine a write velocity characteristic for each detected sequential write stream, and the sequential write stream identification logic is further configured so that the identifying the detected first and third sequential write streams as the first identified sequential write stream and the identifying the detected second sequential write streams as the second identified sequential write stream is a function of the detected first and third sequential write streams having detected write velocity characteristics in a first range, and the detected second sequential write stream having detected write velocity characteristics in a second range. 5. The apparatus of claim 1 wherein the sequential write stream detection logic is further configured so that the detecting first and second sequential write streams in the write commands includes checking parameters of the write commands in the common command queue and wherein the parameters include a write data destination parameter, and determining if the write data destination parameters of two write commands match those of two write commands in a sequence of write commands for a sequential write stream. 6. The apparatus of claim 5 wherein the parameters include a command submission queue origin parameter for each write command of the common command queue. 7. The apparatus of claim 3 wherein the sequential write stream aggregation logic is further configured so that the aggregating the write data of the first identified sequential write stream in the first region of the solid state storage includes sequentially reordering and packing write data of the first identified sequential write stream contiguously within the first region as a function of characteristics of the first identified sequential write stream including a write destination address characteristic of the first sequential write stream. 8. A system for use with a display, comprising: a plurality of processor nodes having a plurality of command submission queues; a solid-state storage drive including nonvolatile storage having a plurality of regions of storage space, and a storage controller having a common command queue; and a video controller for displaying data representative of data stored in the storage; wherein the storage controller is configured to: queue a plurality of write commands from the plurality of command submission queues in the common command queue; and execute write commands queued in the common command queue; wherein the storage controller has sequential write stream identification logic which includes sequential write stream detection logic configured to detect first and second sequential write streams in the write commands, wherein the sequential write stream identification logic is configured to identify the detected first and second sequential write streams as first and second identified sequential write streams, respectively, as a function of characteristics of the first and second detected sequential write streams including a write velocity characteristic, and wherein the storage controller further has sequential write stream aggregation logic configured to write write data of commands being executed into different sequential write stream regions of the solid-state storage as a function of the write stream identifying, including aggregating write data of the first identified sequential write stream in a first sequential write stream storage region of the solid-state storage, and aggregating write data of the second identified sequential write stream in a second sequential write stream storage region of the solid-state storage. 9. The system of claim 8 wherein the solid state storage drive further includes transfer buffer storage having sequential write stream buffer partitions, and the storage controller further has transfer buffer partition write stream data aggregation logic configured to write write data of commands being executed into different sequential write stream buffer partitions of the transfer buffer storage as a function of the write stream identifying by the sequential write stream identification logic, including aggregating write data of the first identified sequential write stream in a first sequential write stream buffer partition of the transfer buffer storage, and aggregating write data of the second identified sequential write stream in a second sequential wr
in relation to response time · CPC title
specifically adapted to achieve a particular effect · CPC title
of parts of caches, e.g. directory or tag array · CPC title
Non-volatile semiconductor memory arrays · CPC title
Configuration or reconfiguration of storage systems · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.