IP Library Granted Patent US 12,445,948
Granted Patent B2
US 12,445,948 · App. 17/720,199 · Granted Oct 14, 2025

Application programming interface to prevent deselection of storage

Inventors: Lopamudra Kundu (Sunnyvale, CA); Nidhi Tomar (Santa Clara, CA); Jinyou Wu (Shanghai, CN)
Assignee: NVIDIA Corporation
H04W48/18G06F9/541G06F9/544G06F9/545G06F9/547H04L67/133H04L67/2866H04W24/02H04W72/51G06F9/5016G06F9/5022H04W80/12H04W84/04
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,445,948
App. No.
17/720,199
Granted
Oct 14, 2025
Kind
B2
Abstract

Apparatuses, systems, and techniques to perform one or more APIs. In at least one embodiment, a processor is to perform an API to prevent deselection of storage to be used to transfer information between a plurality of fifth generation new radio (5G-NR) computing using different transport protocols.

Claims (81)

1. One or more processors comprising:

circuitry to perform an application programming interface (API) to;

receive an identifier of a buffer, the buffer to be used to transfer data between a first computing resource using a first data transport protocol and a second computing resource using a second, different data transport protocol, wherein the second computing resource is to perform one or more wireless communication operations using data stored in the buffer; and

prevent, using the identifier, deallocation of the memory allocated to the buffer.

2. The processor of claim 1 , wherein:

the API is further to initialize a reference counter to indicate when to release the buffer.

3. The processor of claim 1 , wherein;

the API uses one or more functions of the first data transport protocol to use one or more libraries to map the one or more functions to one or more functions of the second, different data transport protocol; and

the one or more functions of the first and second data transport protocols to each cause, at least in part, a buffer to be allocated as part of their respective data transport protocol.

4. The processor of claim 1 , wherein the first computing resource is agnostic as to the second, different data transport protocol used by the second computing resource.

5. The processor of claim 1 , wherein performing the API further causes the first computing resource to cause a third computing resource to perform one or more wireless communication operations associated with one or more functions of the second, different data transport protocol.

6. The processor of claim 1 , wherein the API is performed, at least in part, by a third computing resource of a transport layer.

7. The processor of claim 1 , wherein performing the API causes the second computing resource to send an indication of the allocated buffer to a third computing resource used to perform the API.

8. The processor of claim 1 , wherein:

the first and second computing resources are associated with a 5G-NR network protocol stack that includes a first layer, a second layer, and a third layer;

the first computing resource associated with the first layer;

the second computing resource associated with the second layer;

the API associated with the third layer; and

the third layer located between the first and second layers.

9. The processor of claim 1 , wherein:

the API is further to transfer information between a first layer and a second layer corresponding to a 5G-NR network protocol, wherein the first computing resource is associated with the first layer and requests performance of the wireless communication operation associated with the second, different data transport protocol; and

performance of the API causes the second computing resource the operation.

10. A system, comprising memory to store instructions that, as a result of execution by one or more processors, cause the system to:

perform an application programming interface (API) to;

receive an identifier of a buffer, the buffer to be used to transfer data between a first computing resource using a first data transport protocol and a second computing resource using a second, different data transport protocol, wherein the second computing resource is to perform one or more wireless communication operations using data stored in the buffer; and

prevent, using the identifier, deallocation of the memory allocated to the buffer.

11. The system of claim 10 , wherein the API is further to initialize a reference counter to indicate when to release the buffer.

12. The system of claim 10 , wherein:

the API uses one or more functions of the first data transport protocol to use one or more libraries to map the one or more functions to one or more functions of the second, different data transport protocol; and

the one or more functions of the first and second data transport protocols to each cause, at least in part, data to be transferred as part of their respective data transport protocols.

13. The system of claim 10 , wherein the first computing resource is agnostic as to the second, different data transport protocol used by the second computing resource.

14. The system of claim 10 , wherein the API causes the first computing resource to cause a third computing resource to perform one or more operations associated with the function of the second, different data transport protocol.

15. The system of claim 10 , wherein the API is performed, at least in part, by a third computing resource of a transport layer.

16. The system of claim 10 , wherein performing the API causes the second computing resource to send an indication of the allocated buffer to a third computing resource used to perform the API.

17. The system of claim 10 , wherein:

the first and second computing resources are associated with a 5G-NR network protocol stack that includes a first layer, a second layer, and a third layer;

the first computing resource associated with the first layer;

the second computing resource associated with the second layer;

the API associated with the third layer; and

the third layer located between the first and second layers.

18. A machine-readable medium having stored thereon one or more instructions, which if performed by one or more processors, cause one or more processors to at least:

perform an application programming interface (API) to:

receive an identifier of a buffer, the buffer to be used to transfer data between a first computing resource using a first data transport protocol and a second computing resource using a second, different data transport protocol, wherein the second computing resource is to perform one or more wireless communication operations using data stored in the buffer; and

prevent, using the identifier, deallocation of the memory allocated to the buffer.

19. The machine-readable medium of claim 18 , wherein the API is further to initialize a reference counter to indicate when to release the buffer.

20. The machine-readable medium of claim 18 , wherein:

the API uses one or more functions of the first data transport protocol to use one or more libraries to map the one or more functions to one or more functions of the second, different data transport protocol; and

the one or more functions of the first and second data transport protocols to each cause, at least in part, a buffer to be allocated as part of their respective data transport protocol.

21. The machine-readable medium of claim 18 , wherein the first computing resource is agnostic as to the second, different data transport protocol used by the second computing resource.

22. The machine-readable medium of claim 18 , wherein performing the API further causes the first computing resource to cause a third computing resource to perform one or more wireless communication operations associated with one or more functions of the second, different data transport protocol.

23. The machine-readable medium of claim 18 , wherein the API is performed, at least in part, by a third computing resource of a transport layer.

24. The machine-readable medium of claim 18 , wherein performance of the API causes the second computing resource to send an indication of the allocated buffer to a third computing resource used to perform the API.

25. The machine-readable medium of claim 18 , wherein:

the first and second computing resources are associated with a 5G-NR network protocol stack that includes a first layer, a second layer, and a third layer;

the first computing resource associated with the first layer;

the second computing resource associated with the second layer;

the API associated with the third layer; and

the third layer located between the first and second layers.

26. A method comprising:

perform an application programming interface (API) to;

receive an identifier of a buffer, the buffer to be used to transfer data between a first computing resource using a first data transport protocol and a second computing resource using a second, different data transport protocol, wherein the second computing resource is to perform one or more wireless communication operations using data stored in the buffer; and

prevent, using the identifier, deallocation of the memory allocated to the buffer.

27. The method of claim 26 , wherein the API is further to initialize a reference counter to indicate when to release the buffer.

28. The method of claim 26 , wherein:

the API uses one or more functions of the first data transport protocol to use one or more libraries to map the one or more functions to one or more functions of the second, different data transport protocol; and

the one or more functions of the first and second data transport protocols to each cause, at least in part, a buffer to be allocated as part of their respective data transport protocol.

29. The method of claim 26 , the first computing resource is agnostic as to the second, different data transport protocol used by the second computing resource.

30. The method of claim 26 , wherein performing the API further causes the first computing resource to cause a third computing resource to perform one or more wireless communication operations associated with one or more functions of the second, different data transport protocol.

31. The method of claim 26 , wherein the API is performed, at least in part, by a third computing resource of a transport layer.

32. The method of claim 26 , wherein performance of the API causes the second computing resource to send an indication of the allocated buffer to a third computing resource used to perform the API.

33. The method of claim 26 , wherein:

the first and second computing resources are associated with a 5G-NR network protocol stack that includes a first layer, a second layer, and a third layer;

the first computing resource associated with the first layer;

the second computing resource associated with the second layer;

the API associated with the third layer; and

the third layer located between the first and second layers.

34. The method of claim 26 , wherein:

performing the API is further to transfer information between a first layer and a second layer corresponding to a 5G-NR network protocol, wherein the first computing resource is associated with the first layer and requests performance of the wireless communication operation associated with the second, different data transport protocol; and

performance of the API causes the second computing resource to perform the wireless communication operation.

35. The method of claim 26 , wherein performance of the API further uses information comprising different messages each associated with a different data transport protocol; and

the information is to be transferred between the first and second computing resources using one transport layer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2022
From: KUNDU, LOPAMUDRA; TOMAR, NIDHI; WU, JINYOU
To: NVIDIA CORPORATION
Reel/Frame 059737/0575 →
Priority Claims (1)
WO PCT/CN2022/081192 · Mar 16, 2022 · international
Continuity (2)
Continuation PCTCN2022081192 · Mar 16, 2022
Related Publication 20230297450A1 · Sep 21, 2023
References Cited (79)
US 5983274A · Hyder et al. · 1999 [cited by applicant]
US 6976054B1 · Lavian et al. · 2005 [cited by applicant]
US 7920569B1 · Kasturi et al. · 2011 [cited by applicant]
US 8561038B1 · Sams · 2013 [cited by applicant]
US 8812733B1 · Black et al. · 2014 [cited by applicant]
US 10171423B1 · Woodberg et al. · 2019 [cited by applicant]
US 10645099B1 · Ciubotariu · 2020 [cited by applicant]
US 10736040B1 · Chen · 2020 [cited by applicant]
US 20050097245A1 · Lym et al. · 2005 [cited by applicant]
US 20050265370A1 · Fuente et al. · 2005 [cited by applicant]
US 20130029708A1 · Fox et al. · 2013 [cited by applicant]
US 20130074151A1 · Lin et al. · 2013 [cited by applicant]
US 20140099119A1 · Wei et al. · 2014 [cited by applicant]
US 20150067175A1 · Asaduzzaman et al. · 2015 [cited by applicant]
US 20180027062A1 · Bernat et al. · 2018 [cited by applicant]
US 20180150257A1 · Griffith et al. · 2018 [cited by applicant]
US 20180159965A1 · Francini et al. · 2018 [cited by applicant]
US 20190114197A1 · Gong · 2019 [cited by applicant]
US 20190140967A1 · Deval et al. · 2019 [cited by applicant]
US 20190313359A1 · Lee et al. · 2019 [cited by applicant]
US 20200137745A1 · Bachu et al. · 2020 [cited by applicant]
US 20200218684A1 · Sen et al. · 2020 [cited by applicant]
US 20200236038A1 · Liu et al. · 2020 [cited by applicant]
US 20200358721A1 · Rimmer et al. · 2020 [cited by applicant]
US 20200364223A1 · Pal et al. · 2020 [cited by applicant]
US 20210076299A1 · Chunduri et al. · 2021 [cited by applicant]
US 20210120506A1 · Takeda et al. · 2021 [cited by applicant]
US 20210144517A1 · Guim Bernat et al. · 2021 [cited by applicant]
US 20210149578A1 · Xu et al. · 2021 [cited by applicant]
US 20210184795A1 · Ibars Casas et al. · 2021 [cited by applicant]
US 20210211887A1 · Jones · 2021 [cited by applicant]
US 20210286752A1 · Modukuri et al. · 2021 [cited by applicant]
US 20210314744A1 · Files et al. · 2021 [cited by applicant]
US 20210320850A1 · Young · 2021 [cited by applicant]
US 20210360714A1 · Zhang et al. · 2021 [cited by applicant]
US 20210385252A1 · Lebin et al. · 2021 [cited by applicant]
US 20210397360A1 · Vankamamidi et al. · 2021 [cited by applicant]
US 20210410016A1 · Kwok et al. · 2021 [cited by applicant]
US 20220030531A1 · Kim et al. · 2022 [cited by applicant]
US 20220075731A1 · Dong et al. · 2022 [cited by applicant]
US 20220151022A1 · Chikkur Dattatraya et al. · 2022 [cited by applicant]
US 20220272151A1 · Umanesan · 2022 [cited by applicant]
US 20220276914A1 · Kundu et al. · 2022 [cited by applicant]
US 20230044165A1 · Roy · 2023 [cited by examiner]
US 20230180022A1 · Cepeda · 2023 [cited by applicant]
US 20230232367A1 · Abedini et al. · 2023 [cited by applicant]
US 20230422095A1 · Eker et al. · 2023 [cited by applicant]
US 20240193021A1 · Pateromichelakis et al. · 2024 [cited by applicant]
US 20240202033A1 · Yokono et al. · 2024 [cited by applicant]
US 20240314229A1 · Condoluci et al. · 2024 [cited by applicant]
CN 112997469A · 2021 [cited by applicant]
CN 113132422A · 2021 [cited by applicant]
WO 2021087526A1 · 2021 [cited by applicant]
International Search Report and Written Opinion for Application No. PCT/CN2022/081192, mailed Nov. 25, 2022, filed Mar. 16, 2022, 8 pages. [cited by applicant]
Kaltenberger et al., “OpenAirInterface: Democratizing Innovation in the 5G Era,” Computer Networks, vol. 176, 2020, 11 pages. [cited by applicant]
Yun et al., “An Integrated Transport Solution to Big Data Movement in High-performance Networks,” IEEE 23rd International Conference on Network Protocols, 2015, 3 pages. [cited by applicant]
Welzl et al., “Transport Services: A Modern API for an Adaptive Internet Transport Layer,” IEEE Communications Magazine, 59(4): 2021, 7 pages. [cited by applicant]
5G Americas White Paper, “Transition Toward Open & Interoperable Networks,” Retrieved from https://www.5gamericas.org/wp-content/uploads/2020/11/InDesign-Transition-Toward-Open-Interoperable-Networks-2020.pdf, Nov. 2020… [cited by applicant]
Brown et al., “New Transport Network Architectures for 5G Ran,” Retrieved from https://www.fujitsu.com/us/Images/New-Transport-Network-Architectures-for-5G-RAN.pdf, Sep. 18, 2018, 11 pages. [cited by applicant]
IEEE, “IEEE Standard 754-2008 (Revision of IEEE Standard 754-1985): IEEE Standard for Floating-Point Arithmetic,” Aug. 29, 2008, 70 pages. [cited by applicant]
Peterson et al. “5G Mobile Networks: A Systems Approach, Chapter 5: Advanced Capabilities,” Retrieved from https://5g.systemsapproach.org/disaggregate.html, 2020, 9 pages. [cited by applicant]
Society of Automotive Engineers On-Road Automated Vehicle Standards Committee “Taxonomy and Definitions for Terms Related to Driving Automation Systems for On-Road Motor Vehicles”, Standard No. J3016-201806, dated Jun. … [cited by applicant]
Society of Automotive Engineers On-Road Automated Vehicle Standards Committee, “Taxonomy and Definitions for Terms Related to Driving Automation Systems for On-Road Motor Vehicles,” Standard No. J3016-201609, issued Jan… [cited by applicant]
Stanley et al., “Why Open RAN Needs Flexible Hardware Acceleration,” Retrieved from https://www.lightreading.com/open-ran/why-open-ran-needs-flexible-hardware-acceleration/a/d-id/769984#:˜:text=Hardware%, Jun. 4, 2021, … [cited by applicant]
Wikipedia, “IEEE 802.11,” Wikipedia the Free Encyclopedia, https://en.wikipedia.org/wiki/IEEE_802.11, most recent edit Sep. 20, 2020 [retrieved Sep. 22, 2020], 15 pages. [cited by applicant]
Smee, Dr. John E., “Five Wireless Inventions That Define 5G NR—the Global 5G Standard”, qualcomm.com, Dec. 17, 2017, 13 pages. [cited by applicant]
U.S. Pat. No. 10,326,675, issued Jun. 18, 2019. [cited by applicant]
U.S. Patent Application Publication No. 20070183418, published Aug. 9, 2027. [cited by applicant]
U.S. Patent Application Publication No. 20230171168, published Jun. 1, 2023. [cited by applicant]
U.S. Patent Application Publication No. 20230074288, published Mar. 9, 2023. [cited by applicant]
U.S. Patent Application Publication No. 20220173886, published Jun. 2, 2022. [cited by applicant]
U.S. Patent Application Publication No. 20220086218, published Mar. 17, 2022. [cited by applicant]
U.S. Patent Application Publication No. 20210117249, published Apr. 22, 2021. [cited by applicant]
U.S. Patent Application Publication No. 20200145337, published May 7, 2020. [cited by applicant]
U.S. Patent Application Publication No. 20190349426, published Nov. 14, 2019. [cited by applicant]
U.S. Patent Application Publication No. 20140086177, published Mar. 27, 2014. [cited by applicant]
U.S. Patent Application Publication No. 20200305211, published Sep. 24, 2020. [cited by applicant]
U.S. Patent Application Publication No. 20020191543, published Dec. 19, 2002. [cited by applicant]
U.S. Patent Application Publication No. 20230109752, published Apr. 13, 2023. [cited by applicant]