IP Library Granted Patent US 12693917
Granted Patent B1
US 12693917 · App. 18/380,611 · Granted Jul 28, 2026

Application programming interface to share storage

Inventors: Fnu Vishnuswaroop Ramesh (San Jose, CA); Vivek Belve Kini (San Jose, CA); Jesus Ramos (San Jose, CA); Prasad Marathe (Santa Clara, CA)
Assignee: NVIDIA Corporation
G06F9/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 12693917
App. No.
18/380,611
Filed
Oct 16, 2023
Granted
Jul 28, 2026
Kind
B1
Art Unit
2198
USPC
719/328
Abstract

Apparatuses, systems, and techniques to share portions of storage across operating system instances. In at least one embodiment, one or more APIs are performed to cause a portion of storage used by a first operation system instance to be shared with a second operation system instance using a handle identifying the portion of storage.

Claims (35)

1 . One or more processors comprising:

circuitry to, in response to an application programming interface (API) call:

generate a handle identifying a portion of storage used by a first operating system instance;

cause the handle to be shared with a second operating system instance using a socket protocol;

cause the second operating system instance to map the portion of storage based, at least in part, on the handle; and

cause an accelerator associated with the second operating system instance to directly access the portion of storage without storing data locally.

2 . The one or more processors of claim 1 , wherein the one or more processors are to generate an indication of the portion of storage and to cause the second operating system instance to use the portion of storage based, at least in part, on the indication.

3 . The one or more processors of claim 1 , wherein the portion of storage comprises memory of a first processor of the first operating system instance and a second processor of the second operating system instance is to use information of the portion of storage.

4 . The one or more processors of claim 1 , wherein the handle indicates one or more memory addresses associated with the portion of storage.

5 . The one or more processors of claim 1 , wherein the one or more processors are to cause the second operating system instance to access the portion of storage using a local handle generated based, at least in part, on an indication of the portion of storage.

6 . The one or more processors of claim 1 , wherein the portion of storage used by the first operating system instance is caused to be shared with the second operating system instance based, at least in part, on querying a handle generated in association with the portion of storage.

7 . The one or more processors of claim 1 , wherein the one or more processors are to cause a graphics processing unit (GPU) of the second operating system instance to use information stored in the portion of storage.

8 . A method comprising:

in response to an application programming interface (API) call:

generating a handle identifying a portion of storage used by a first operating system instance;

causing the handle to be shared with a second operating system instance using a socket protocol;

causing the second operating system instance to map the portion of storage based, at least in part, on the handle; and

causing an accelerator associated with the second operating system instance to directly access the portion of storage without storing data locally.

9 . The method of claim 8 , further comprising generating an indication of the portion of storage and causing the second operating system instance to use the portion of storage based, at least in part, on the indication.

10 . The method of claim 8 , wherein the portion of storage comprises memory of a first processor of the first operating system instance and a second processor of the second operating system instance is to use information of the portion of storage.

11 . The method of claim 8 , wherein the handle indicates one or more memory addresses associated with the portion of storage.

12 . The method of claim 8 , further comprising causing the second operating system instance to access the portion of storage using a local handle generated based, at least in part, on an indication of the portion of storage.

13 . The method of claim 8 , wherein the portion of storage used by the first operating system instance is caused to be shared with the second operating system instance based, at least in part, on querying a handle generated in association with the portion of storage.

14 . The method of claim 8 , further comprising causing a graphics processing unit (GPU) of the second operating system instance to use information stored in the portion of storage.

15 . A system comprising:

one or more processors to, in response to an application programming interface (API) call:

generate a handle identifying a portion of storage used by a first operating system instance;

cause the handle to be shared with a second operating system instance using a socket protocol;

cause the second operating system instance to map the portion of storage based, at least in part, on the handle; and

cause an accelerator associated with the second operating system instance to directly access the portion of storage without storing data locally.

16 . The system of claim 15 , wherein the one or more processors are to generate an indication of the portion of storage and to cause the second operating system instance to use the portion of storage based, at least in part, on the indication.

17 . The system of claim 15 , wherein the portion of storage comprises memory of a first processor of the first operating system instance and a second processor of the second operating system instance is to use information of the portion of storage.

18 . The system of claim 15 , wherein the handle indicates one or more memory addresses associated with the portion of storage.

19 . The system of claim 15 , wherein the one or more processors are to cause the second operating system instance to access the portion of storage using a local handle generated based, at least in part, on an indication of the portion of storage.

20 . The system of claim 15 , wherein, the portion of storage used by the first operating system instance is caused to be shared with the second operating system instance based, at least in part, on querying a handle generated in association with the portion of storage.