Storage compute device with tiered memory processing

US9632729B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9632729-B2
Application numberUS-201514704111-A
CountryUS
Kind codeB2
Filing dateMay 5, 2015
Priority dateMay 7, 2014
Publication dateApr 25, 2017
Grant dateApr 25, 2017

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 data object is received at a storage compute device in response to a request from a host. A requirement of the data object is determined based on a computation to be performed on the data object. The requirement related to at least speed and capacity of media used to store the data object. A tier is selected from the storage compute device based on speed and capacity characteristics of the selected tier corresponding to the requirement of the data object. The data object is stored in the selected tier.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: receiving a data object and a command at a storage compute device in response to a request from a host, the command specifying a matrix computation to be performed on the data object at the storage compute device; determining a requirement of the data object based on the matrix computation, the requirement related to at least speed and capacity of media used to store the data object; selecting a tier of non-volatile memory from a plurality of tiers of the storage compute device based on speed and capacity characteristics of the selected tier corresponding to the requirement of the data object; storing the data object in the selected tier; and performing the matrix computation on the data object stored in the selected tier. 2. The method of claim 1 , further comprising separating the data object into two data sub-objects and storing the two data sub-objects in two different tiers based on the computation being performed on the data object. 3. The method of claim 2 , wherein the sub-objects comprise a matrix and a transformed version of the matrix or metadata describing the matrix. 4. The method of claim 2 , wherein the sub-objects comprise a matrix formatted using different types of compression. 5. The method of claim 1 , wherein the requirement further is further related to reliability of the media used to store the data object. 6. The method of claim 1 , wherein the matrix computation produces an intermediate result, and wherein the intermediate result is stored in a different tier than the data object. 7. The method of claim 1 , wherein tiers of the storage compute device further comprise volatile memory. 8. The method of claim 7 , further comprising performing the matrix computation in a second selected tier of the volatile memory using the stored data object. 9. The method of claim 7 , further comprising performing the matrix computation within the selected tier using the stored data object, wherein the computation produces an intermediate result, the intermediate result being stored in a second selected tier of the volatile memory. 10. The method of claim 1 , wherein the matrix computation involves the data object and a second data object received at the storage compute device in response to the request from the host. 11. The method of claim 1 , wherein the requirement is further based on a size of the data object and the ability to retrieve the object using a sequential read operation. 12. A storage compute device, comprising: a host interface; a channel interface facilitating access to non-volatile memory, the non-volatile memory comprising a plurality of tiers having different characteristics relating to at least speed and capacity; and a processor coupled to the host interface and the channel interface, the processor configured to: receive a data object and a command via the host interface, the command specifying a matrix computation to be performed on the data object at the storage compute device; determine a requirement of the data object based on the matrix computation, the requirement related to at least speed and capacity of media used to store the data object; select a tier from the plurality of tiers of based on speed and capacity characteristics of the selected tier corresponding to the requirement of the data object; store the data object in the selected tier; and perform the matrix computation on the data object stored in the selected tier. 13. The storage compute device of claim 12 , wherein the processor is further configured to separate the data object into two data sub-objects and store the two data sub-objects in two different tiers based on the computation being performed on the data object. 14. The storage compute device of claim 13 , wherein the sub-objects comprise a matrix and a transformed version of the matrix. 15. The storage compute device of claim 13 , wherein the sub-objects comprise a matrix and metadata describing the matrix. 16. The storage compute device of claim 13 , wherein the sub-objects comprise a matrix formatted using different types of compression. 17. The storage compute device of claim 12 , wherein the matrix computation produces an intermediate result, and wherein the intermediate result is stored in a different tier than the data object. 18. The storage compute device of claim 12 , wherein the plurality of tiers each comprise separate processing resources coupled to respective media in each of the tiers, the processing resources are configured to reduce performance gaps between adjacent tiers or to reduce power consumption of the storage compute device. 19. A storage compute device, comprising: a host interface; a non-volatile memory comprising a plurality of tiers, each of the tiers comprising: media having specific characteristics relating to at least speed and capacity; and a processing resource coupled to media, the processing resource configured to reduce performance gaps between adjacent ones of the plurality of tiers; a processor coupled to the host interface and the non-volatile memory, the processor configured to: receive a data object and a command via the host interface, the command specifying a matrix computation to be performed on the data object at the storage compute device; select a tier from the plurality of tiers of based on speed and capacity characteristics of the selected tier corresponding to a requirement of the data object; store the data object in the selected tier; and perform the matrix computation on the data object stored in the selected tier. 20. The storage compute device of claim 19 , wherein the processing resources are configured to reduce the performance gaps between adjacent ones of the plurality of tiers by configuring at least two tiers to have different configurations related to one or more of clock speed, bus speed, word size, and memory buffer size.

Assignees

Inventors

Classifications

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

  • Improving I/O performance · CPC title

  • G06F3/0685Primary

    Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays · CPC title

  • by allocating resources to storage systems · CPC title

  • One time programmable [OTP] memory, e.g. PROM, WORM · 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 US9632729B2 cover?
A data object is received at a storage compute device in response to a request from a host. A requirement of the data object is determined based on a computation to be performed on the data object. The requirement related to at least speed and capacity of media used to store the data object. A tier is selected from the storage compute device based on speed and capacity characteristics of the se…
Who is the assignee on this patent?
Seagate Technology Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0685. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 25 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).