Systems and methods for data transfer for computational storage devices

US12399639B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12399639-B2
Application numberUS-202117495810-A
CountryUS
Kind codeB2
Filing dateOct 6, 2021
Priority dateJan 27, 2021
Publication dateAug 26, 2025
Grant dateAug 26, 2025

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.

Provided are systems, methods, and apparatuses for managing memory. The method can include: establishing a connection via an interface, between a host device and a storage device; and transferring data, via the interface, between first memory associated with the host device and second memory associated with the storage device by performing a data operation on the second memory by an application executed by the host, where the storage device includes a processing element that accelerates the data operation by performing at least one offload function on the data operation.

First claim

Opening claim text (preview).

What is claimed is: 1. A method to manage memory, the method comprising: establishing a connection, via an interface, between a host device and a storage device; and transferring data, via the interface, from first memory associated with the host device to second memory associated with the storage device, wherein the interface comprises an application programming interface (API), and the host device allocates the second memory using at least one command associated with the API; wherein the storage device includes a flash storage and a processing element that accelerates a data operation by performing at least one offload function on the data operation of an application, wherein the data operation is performed on the data by the storage device, wherein the data is transferred between the first memory and the second memory based at least in part on the at least one offload function, and wherein the at least one offload function is based at least in part on the data operation of the application. 2. The method of claim 1 , wherein the host device allocates the second memory using a fine-grained allocation scheme or a coarse-grained allocation scheme. 3. The method of claim 1 , wherein the method further comprises addressing the second memory and the transferring data is based at least in part on the addressing of the second memory. 4. The method of claim 1 , wherein the second memory comprises a secure address space, wherein the method further comprises host device performing one or more multitenant operations based on the secure address space, and wherein the secure address space protects the data of a first tenant from access by a second tenant. 5. The method of claim 1 , wherein the storage device comprises a non-volatile memory express (NVMe) enabled storage device and the data operation is performed using a scatter gather list (SGL). 6. The method of claim 1 , wherein the performing the data operation further comprises the storage device transferring data from persistent memory associated with the storage device to the second memory. 7. The method of claim 1 , wherein the transferring data further comprises the host device providing information regarding the first memory's layout to the storage device. 8. The method of claim 1 , wherein the transferring data further comprises the storage device providing information regarding the storage device's memory layout for read and write operations to the host device. 9. The method of claim 1 , wherein the establishing the connection comprises a discovery and setup process. 10. The method of claim 1 , wherein the offload function accesses a result of the data operation from the second memory associated with the storage device. 11. A non-transitory computer-readable medium storing computer-executable instructions for managing memory which, when executed by a processor, cause the processor to perform operations comprising: establishing a connection, via an interface, between a host device and a storage device; and transferring data, via the interface, from first memory associated with the host device to second memory associated with the storage device, wherein the interface comprises an application programming interface (API), and the host device allocates the second memory using at least one command associated with the API; wherein the storage device includes a flash storage and a processing element that accelerates a data operation by performing at least one offload function on the data operation of an application, wherein the data operation is performed on the data by the storage device, wherein the data is transferred between the first memory and the second memory based at least in part on the at least one offload function, and wherein the at least one offload function is based at least in part on the data operation of the application. 12. The non-transitory computer-readable medium of claim 11 , wherein the computer-executable instructions further cause the processor to perform operations comprising addressing the second memory, and the transferring data is based at least in part on the addressing of the second memory. 13. The non-transitory computer-readable medium of claim 11 , wherein the second memory comprises a secure address space, wherein the host device performs one or more multitenant operations based on the secure address space and wherein the secure address space protects the data of a first tenant from access by a second tenant. 14. The non-transitory computer-readable medium of claim 11 , wherein the storage device comprises a non-volatile memory express (NVMe) enabled storage device and the data operation is performed using a scatter gather list (SGL). 15. The non-transitory computer-readable medium of claim 11 , wherein the data operation further comprises the storage device transferring data from persistent memory associated with the storage device to the second memory. 16. A system for managing memory, comprising: a host device comprising a first memory and an application; a storage device comprising a device manager, a flash storage, a processing element, and a second memory; wherein the system stores computer-executable instructions which, when executed by a processor, cause the processor to perform operations comprising: establishing a connection, via an interface, between the host device and the storage device; and transferring data, via the interface, from first memory associated with the host device to second memory associated with the storage device, wherein the interface comprises an application programming interface (API), and the host device allocates the second memory using at least one command associated with the API; wherein the device manager configures the processing element to accelerate a data operation by performing at least one offload function on the data operation of an application, wherein the data operation is performed on the data by the processing element, wherein the data is transferred between the first memory and the second memory based at least in part on the at least one offload function, and wherein the at least one offload function is based at least in part on the data operation of the application. 17. The system of claim 16 , wherein the storage device transfers second data, via the interface, between at least a third memory associated with the storage device and a fourth memory associated with the storage device. 18. The system of claim 16 , wherein the storage device transfers second data, via the interface, between at least a third memory associated with the storage device and a fourth memory associated with the host device.

Assignees

Inventors

Classifications

  • in relation to access · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • Buffers; Shared memory; Pipes · CPC title

  • Offload · CPC title

  • G06F3/0644Primary

    Management of space entities, e.g. partitions, extents, pools · 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 US12399639B2 cover?
Provided are systems, methods, and apparatuses for managing memory. The method can include: establishing a connection via an interface, between a host device and a storage device; and transferring data, via the interface, between first memory associated with the host device and second memory associated with the storage device by performing a data operation on the second memory by an application…
Who is the assignee on this patent?
Samsung Electronics Co Ltd
What technology area does this patent fall under?
Primary CPC classification G06F3/0644. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 26 2025 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).