IP Library Granted Patent US 12,210,470
Granted Patent B2
US 12,210,470 · App. 17/730,174 · Granted Jan 28, 2025

Systems, methods, and apparatus to identify functions for computational devices

Inventors: Oscar P. Pinto (San Jose, CA); William Martin (Roseville, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F13/385G06F9/547
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,210,470
App. No.
17/730,174
Granted
Jan 28, 2025
Kind
B2
Abstract

A method may include interacting with an interface for one or more computational devices, wherein the interacting is based on an identifier, and wherein the identifier comprises information that identifies a functionality of a computational device functions. The information may include a functionality identifier. The identifier may further include information that identifies a group of the computational device function. The group of the computational device function may be based on a source of the computational device function. The information that identifies the functionality of a computational device function may include a functionality identifier, and the information that identifies the group of the computational device function may include a group identifier. The functionality identifier may include a unique function identifier, and the group identifier may include an organizationally unique identifier.

Claims (42)

1. A method comprising:

interacting with an interface for one or more computational devices, wherein the interface uses at least one processing circuit;

wherein the interacting is based on a first identifier and a second identifier;

wherein the first identifier comprises first information that identifies a first functionality of a first computational device program, and the second identifier comprises second information that identifies a second functionality of a second computational device program; and

wherein the interacting comprises:

receiving, at the one or more computational devices, from an apparatus, the first identifier;

executing, based on the receiving the first identifier, the first computational device program; and

receiving, at the one or more computational devices, from the apparatus, the second identifier.

2. The method of claim 1 , wherein the first information comprises a functionality identifier.

3. The method of claim 1 , wherein the first identifier further comprises information that identifies a group of the first computational device program.

4. The method of claim 3 , wherein the group of the first computational device program is based on a source of the first computational device program.

5. The method of claim 3 , wherein:

the first information that identifies the first functionality of the first computational device program comprises a first functionality identifier;

the first information that identifies the group of the first computational device program comprises a first group identifier;

the second information comprises a second functionality identifier and a second group identifier;

the first functionality identifier is the same as the second functionality identifier;

the first group identifier is different from the second group identifier; and

the first functionality is interoperable with the second functionality.

6. The method of claim 1 , wherein the interacting comprises requesting requested information using the interface.

7. The method of claim 6 , further comprising providing, by the interface, based on the requesting, the requested information.

8. The method of claim 6 , wherein the requested information comprises an indication that one or more of the one or more computational devices is capable of executing the first computational device program.

9. The method of claim 8 , wherein the indication comprises a list of computational devices that are capable of executing the first computational device program.

10. The method of claim 6 , wherein the requested information comprises a list of computational device programs capable of being executed by at least one of the one or more computational devices.

11. The method of claim 6 , wherein the requested information comprises a format of the first computational device program.

12. The method of claim 11 , wherein the format comprises one or more parameters.

13. The method of claim 6 , wherein the requesting comprises invoking an interface call.

14. The method of claim 1 , wherein the interacting comprises accessing, based on the first identifier, using the interface, the first computational device program.

15. The method of claim 14 , wherein the accessing comprises configuring the first computational device program.

16. The method of claim 1 , wherein the executing the first computational device program is performed, at least partially, with hardware.

17. A device comprising:

one or more computational resources capable of performing a first computational device program and a second computational device program; and

at least one processing circuit capable of configuring, based on a first identifier, the first computational device program, and configuring, based on a second identifier, the second computational device program;

wherein the first identifier comprises first information that identifies a first functionality of the first computational device program, and the second identifier comprises second information that identifies a second functionality of the second computational device program; and

wherein the at least one processing circuit is configured to receive, from an apparatus, the first identifier, and receive, from the apparatus, the second identifier.

18. The device of claim 17 , wherein the device comprises a computational storage device.

19. A system comprising:

an apparatus comprising at least one processing circuit configured to provide an interface for one or more computational devices;

wherein the interface is configured to perform at least one first operation based on a first identifier and at least one second operation based on a second identifier;

wherein the first identifier identifies a first functionality of a first computational device program and the second identifier identifies a second functionality of a second computational device program;

wherein the at least one first operation provides first information about the first functionality of the first computational device program and the at least one second operation provides second information about the second functionality of the second computational device program; and

wherein the interface is configured to send, to the one or more computational devices, the first identifier and the second identifier.

20. The system of claim 19 , wherein the apparatus is configured to execute an application configured to interact with the interface.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2023
From: PINTO, OSCAR P.; MARTIN, WILLIAM
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 064669/0067 →
Continuity (3)
Provisional Application 63319268 · Mar 11, 2022
Provisional Application 63229069 · Aug 3, 2021
Related Publication 20230039450A1 · Feb 9, 2023
References Cited (21)
US 9294567B2 · Hussain et al. · 2016 [cited by applicant]
US 9430412B2 · Huang · 2016 [cited by applicant]
US 10095537B1 · Neogy et al. · 2018 [cited by applicant]
US 10496335B2 · Khan et al. · 2019 [cited by applicant]
US 10996892B2 · Gibb et al. · 2021 [cited by applicant]
US 11086804B2 · Benisty et al. · 2021 [cited by applicant]
US 11631297B1 · Nguyen · 2023 [cited by examiner]
US 11636732B2 · Nguyen · 2023 [cited by examiner]
US 11770756B2 · Karabinis · 2023 [cited by examiner]
US 11983989B2 · Nguyen et al. · 2024 [cited by applicant]
US 20070265984A1 · Santhana · 2007 [cited by examiner]
US 20080176713A1 · Olivera Brizzio · 2008 [cited by examiner]
US 20140089643A1 · Nishimoto et al. · 2014 [cited by applicant]
US 20160226732A1 · Kim et al. · 2016 [cited by applicant]
US 20180063145A1 · Cayton et al. · 2018 [cited by applicant]
US 20190173989A1 · Elmasri · 2019 [cited by examiner]
European Extended Search Report for Application No. 22188091.7, mailed Dec. 19, 2022. [cited by applicant]
Malone, Kim et al., “NVMe Computation Storage Standardizing Offload of Computation via NVMe”, Storage Developer Conference, Virtual Conference, 2021, 24 pages. [cited by applicant]
NVM Express, Inc. “NVM Express Base Specification Revision 1.4,” 2019, 403 pages. [cited by applicant]
NVM Express, Inc. “NVM Express Base Specification Revision 1.4a,” 2020, 400 pages. [cited by applicant]
Office Action for U.S. Appl. No. 18/218,577, mailed Dec. 2, 2024. [cited by applicant]