IP Library Granted Patent US 12,073,116
Granted Patent B2
US 12,073,116 · App. 17/705,269 · Granted Aug 27, 2024

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,073,116
App. No.
17/705,269
Granted
Aug 27, 2024
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 (34)

1. A method for managing functions, 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 and determining one or more corresponding function types for the functions;

grouping the functions based on the function types using a group name;

providing the group name to a second device for use in connection with an associated application, wherein the first device comprises a computational storage (CS) device; and

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

2. The method of claim 1 , wherein the method further comprises 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 , wherein the method further comprises 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 advertising the group name to a host device.

5. The method of claim 1 , wherein the determining one or more functions associated with a 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).

6. The method of claim 1 , wherein the CS device comprises a non-volatile memory express (NVMe) enabled storage device or an NVMe-over-Fabric (NVMe-oF) enabled storage device.

7. The method of claim 1 , wherein the method further comprises establishing a connection between the first device and the second device, the establishing further including a discovery process.

8. The method of claim 1 , wherein the determining the one or more functions associated with a first device and determining one or more corresponding function types is based on a hint generated by the second device.

9. A system for managing functions, comprising:

a host device comprising a first memory and an application;

a storage device comprising 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:

determining one or more functions associated with the storage device and determining one or more corresponding function types for the functions;

grouping the functions based on the function types using a group name;

providing the group name to the host device for use in connection with an associated application, wherein the storage device comprises a computational storage (CS) device; and

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

10. The system of claim 9 , 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.

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

12. The system of claim 9 , wherein the providing the group name to the host device comprises advertising the group name to the host device.

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

14. The system of claim 9 , wherein the CS device comprises a non-volatile memory express (NVMe) enabled storage device or an NVMe-over-Fabric (NVMe-oF) enabled storage device.

15. The system of claim 9 , wherein the determining the one or more functions associated with the storage device and determining one or more corresponding function types is based on a hint generated by the host device.

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

determine one or more functions associated with a first device and determining one or more corresponding function types for the functions;

group the functions based on the function types using a group name;

provide the group name to a second device for use in connection with an associated application, wherein the first device comprises a computational storage (CS) device; and

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

17. The non-transitory computer-readable medium of claim 16 , 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.

18. The non-transitory computer-readable medium of claim 16 , wherein the operations further comprise: grouping the functions based on the second function types and the providing the group name to the second device comprises advertising the group name to a host device.

19. The non-transitory computer-readable medium of claim 16 , wherein the determining the one or more functions associated with the storage device and determining one or more corresponding function types is based on a hint generated by a host device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 21, 2023
From: PINTO, OSCAR P.; MARTIN, WILLIAM
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 064655/0361 →
Continuity (2)
Provisional Application 63185355 · May 6, 2021
Related Publication 20220357890A1 · Nov 10, 2022
Cited By (1)
US 12,596,504