US 12,475,076 B2
Remote promise and remote future for downstream components to update upstream states
Ryan Olson, Golden, CO (US); Michael Demoret, Denver, CO (US); and Bartley Richardson, Alexandria, VA (US)
Assigned to NVIDIA Corporation, Santa Clara, CA (US)
Filed by NVIDIA Corporation, Santa Clara, CA (US)
Filed on Mar. 7, 2024, as Appl. No. 18/598,022.
Application 18/598,022 is a continuation of application No. 17/862,234, filed on Jul. 11, 2022, granted, now 12,086,095.
Claims priority of provisional application 63/346,501, filed on May 27, 2022.
Prior Publication US 2024/0211429 A1, Jun. 27, 2024
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 15/173 (2006.01); G06F 9/30 (2018.01); H04L 67/025 (2022.01); H04L 67/1097 (2022.01)
CPC G06F 15/17331 (2013.01) [G06F 9/3004 (2013.01); H04L 67/025 (2013.01); H04L 67/1097 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computing system comprising:
a first computing device; and
a first memory coupled to the first computing device, wherein the first computing device is to:
receive a remote promise object assigned to a first serialized object from a second computing device over a network fabric, wherein the remote promise object is an object that i) uniquely identifies a first contiguous block of the first serialized object stored in a second memory associated with the second computing device, and ii) comprises a reference count token indicating a life cycle of the remote promise object, wherein the remote promise object is released in response to a second serialized object being provided back to the second computing device;
obtain contents of the first contiguous block from the second memory for storage at the first memory associated with the first computing device;
send contents of a second contiguous block of the second serialized object stored in the first memory to the second memory; and
send a message to the second computing device to release the remote promise object responsive to the second serialized object being provided back to the second computing device.