US 11,853,798 B2
Disaggregated memory pool assignment
Siamak Tavallaei, Spring, TX (US); Vishal Soni, Redmond, WA (US); and Ishwar Agarwal, Redmond, WA (US)
Assigned to Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Sep. 3, 2020, as Appl. No. 17/011,805.
Prior Publication US 2022/0066827 A1, Mar. 3, 2022
Int. Cl. G06F 9/46 (2006.01); G06F 9/50 (2006.01); G06F 9/30 (2018.01); G06F 9/4401 (2018.01); G06F 12/02 (2006.01)
CPC G06F 9/5016 (2013.01) [G06F 9/30101 (2013.01); G06F 9/4411 (2013.01); G06F 9/467 (2013.01); G06F 9/5083 (2013.01); G06F 12/0238 (2013.01); G06F 2209/508 (2013.01); G06F 2209/5011 (2013.01); G06F 2209/5022 (2013.01)] 17 Claims
OG exemplary drawing
 
17. At a compute node, a method, comprising:
outputting, to a memory controller, a request to assign a slice of a disaggregated memory pool to the compute node;
where the request is rejected by the memory controller, the memory controller outputs to a fabric manager an indication that the request for the slice is rejected, where the fabric manager is configured to receive descriptions of memory slices attached to each memory controller of two or more memory controllers and assemble a memory manifest for the disaggregated memory pool based on the descriptions of the memory slices, and where the fabric manager is configured to issue a request to a second memory controller of the two or more memory controllers to assign a slice of memory attached to the second memory controller to the compute node; and
adding an address range of the slice to a memory map and execute memory transactions using the slice.