IP Library Granted Patent US 12,596,504
Granted Patent B2
US 12,596,504 · App. 18/796,285 · Granted Apr 7, 2026

Systems, methods, and apparatus for computational storage functions

Inventors: Oscar P. Pinto (San Jose, CA); William Martin (San Jose, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F3/0659G06F3/0604G06F3/0634G06F3/067G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,596,504
App. No.
18/796,285
Granted
Apr 7, 2026
Kind
B2
Abstract

Provided are systems, methods, and apparatuses for managing functions for storage devices. The method can include: determining one or more functions associated with a first device and determining one or more corresponding function types for the functions; grouping the functions based on the function types using a group name; and providing the group name to a second device for use in connection with an associated application, wherein the storage device comprises a computational storage (CS) device.

Claims (50)

1 . A method for interfacing of devices, at least a portion of the method being performed by one or more processors, the method comprising:

determining one or more functions associated with a first device;

determining one or more function types for the functions;

grouping the functions under a group name based on the one or more function types;

providing the group name to a second device for use in connection with an application; and

communicating, using the functions, with the first device via the group name and via the application.

2 . The method of claim 1 , further comprising:

determining one or more properties associated with the functions; and

determining corresponding second function types based on the properties, wherein the one or more properties include a power usage or a computational load associated with at least one function of the functions.

3 . The method of claim 2 , further comprising grouping the functions based on the second function types.

4 . The method of claim 1 , wherein the providing the group name to the second device comprises communicating the group name to a host device.

5 . The method of claim 1 further comprising:

associating a first function of the one or more functions to a first processor; and

associating a second function of the one or more functions to a second processor, the one or more processors including at least one of the first processor or the second processor.

6 . The method of claim 5 , wherein:

the first device comprises a memory device, and

the memory device comprises a memory transfer protocol that enables the memory device to interface the one or more processors or a network fabric.

7 . The method of claim 1 , wherein the determining the one or more functions associated with the first device comprises transmitting information via an interface between the first device and the second device, and wherein the interface comprises an application programming interface (API).

8 . The method of claim 1 , further comprising making a connection between the first device and the second device, the making of the connection further including a discovery process.

9 . The method of claim 1 , wherein the determining the one or more functions associated with a first device and determining the one or more function types is based on information provided by the second device regarding the grouping of the functions.

10 . A system for interfacing of devices, comprising:

a host device comprising a first memory and an application;

a memory device comprising a second memory and a processing element;

wherein the system stores computer-executable instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

determining one or more functions associated with the memory device; and

determining one or more function types for the functions;

grouping the functions under a group name based on the one or more function types;

providing the group name to the host device for use in connection with an application; and

communicating, using the functions, with the memory device via the group name and via the application.

11 . The system of claim 10 , wherein the operations further comprise:

determining one or more properties associated with the functions; and

determining corresponding second function types based on the properties, wherein the one or more properties include a power usage or a computational load associated with at least one function of the functions.

12 . The system of claim 11 , wherein the operations further comprise grouping the functions based on the second function types.

13 . The system of claim 10 , wherein the providing the group name to the host device comprises communicating the group name to the host device.

14 . The system of claim 10 , wherein the determining one or more functions associated with the memory device comprises transmitting information via an interface between the memory device and the host device, and wherein the interface comprises an application programming interface (API).

15 . The system of claim 10 , wherein the operations further comprise:

associating a first function of the one or more functions to a first processor; and

associating a second function of the one or more functions to a second processor, the one or more processors including at least one of the first processor or the second processor.

16 . The system of claim 10 , wherein the determining the one or more functions associated with the memory device and determining the one or more function types is based on a information provided by the host device regarding the grouping of the functions.

17 . A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause the processor to:

determine one or more functions associated with a first device;

determine one or more function types for the one or more functions;

group the one or more functions under a group name based on the one or more function types;

provide the group name to a second device for use in connection with an application; and

communicate, using the one or more functions, with the first device via the group name and via the application.

18 . The non-transitory computer-readable medium of claim 17 , storing further instructions that, when executed by the processor, cause the processor to:

determine one or more properties associated with the one or more functions; and

determine corresponding second function types based on the properties, wherein the one or more properties include a power usage or a computational load associated with at least one function of the one or more functions.

19 . The non-transitory computer-readable medium of claim 18 , storing further instructions that, when executed by the processor, cause the processor to group the one or more functions based on the second function types, wherein the providing the group name to the second device comprises communicating the group name to a host device.

20 . The non-transitory computer-readable medium of claim 17 , wherein the determining the one or more functions associated with a first device and determining the one or more function types are based on a information provided by a host device regarding the grouping of the functions.

Continuity (3)
Continuation 17705269 · Mar 25, 2022
Provisional Application 63185355 · May 6, 2021
Related Publication 20240393984A1 · Nov 28, 2024
References Cited (12)
US 12073116B2 · Pinto · 2024 [cited by examiner]
US 20060282475A1 · Suermondt · 2006 [cited by examiner]
US 20140215453A1 · Peng · 2014 [cited by examiner]
US 20190250852A1 · Kabra et al. · 2019 [cited by applicant]
US 20200252458A1 · Bhatia et al. · 2020 [cited by applicant]
US 20220188028A1 · Mesnier · 2022 [cited by examiner]
CN 111459471A · 2020 [cited by applicant]
WO 2018111987A1 · 2018 [cited by applicant]
Final Office Action for U.S. Appl. No. 17/705,269, mailed Feb. 14, 2024. [cited by applicant]
Notice of Allowance for U.S. Appl. No. 17/705,269, mailed Apr. 16, 2024. [cited by applicant]
Office Action for U.S. Appl. No. 17/705,269, mailed Aug. 10, 2023. [cited by applicant]
SNIAVIDEO, “PM+CS Summit 2021: How Computational Storage Can Become a new Standard for Cloud Architectures” URL: https://www.youtube.com/watch?v=bajep7cyxM4, Apr. 23, 2021, 2 pages. [cited by applicant]