IP Library Granted Patent US 12699652
Granted Patent B2
US 12699652 · App. 19/038,699 · Granted Aug 4, 2026

Systems and methods for management of virtualized memory

Inventors: Yang Seok Ki (Palo Alto, CA); Myung June Jung (Santa Clara, CA)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06F12/0862G06F2212/6024
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 12699652
App. No.
19/038,699
Granted
Aug 4, 2026
Kind
B2
Abstract

Provided are systems, methods, and apparatuses for systems and methods of scheduled prefetch mechanisms for memory pools. In one or more examples, the systems, devices, and methods include adding a memory request to a list of requests based on a determination that a prefetch option in the memory request is enabled; determining that performing the memory request satisfies a timing condition and a transaction condition indicated in the memory request; placing, in a position of a command queue, a command that is generated based on the determination that performing the memory request satisfies the timing condition and the transaction condition; and sending a notification to a source of the memory request based on a determination that the command is executed.

Claims (38)

1 . A method of managing a memory pool, the method comprising:

adding a memory request to a list of requests based on a determination that a prefetch option in the memory request is enabled;

determining that performing the memory request satisfies a timing condition and a transaction condition indicated in the memory request;

placing, in a position of a command queue, a command that is generated based on the determination that performing the memory request satisfies the timing condition and the transaction condition; and

sending a notification to a source of the memory request based on a determination that the command is executed.

2 . The method of claim 1 , wherein the position is selected to schedule execution of the command based on the determination that performing the memory request satisfies the timing condition and the transaction condition indicated in the memory request.

3 . The method of claim 1 , wherein satisfying the timing condition is based on a determination that the memory request is performed before a time indicated in the memory request.

4 . The method of claim 1 , wherein satisfying the transaction condition is based on a determination that the memory request is performed after execution of a transaction indicated in the memory request.

5 . The method of claim 1 , wherein a location of the position is selected based on a position of a second position of the command queue that holds the transaction indicated in the memory request.

6 . The method of claim 1 , wherein a prefetch manager generates the command and adds the command to the command queue based on sending a message to the prefetch manager indicating that the timing condition and the transaction condition are satisfied.

7 . The method of claim 1 , wherein the command is added to the command queue based on a determination that the source is remote from a host that is processing the memory request.

8 . The method of claim 7 , wherein:

the memory pool comprises a memory space provided by a first memory module of the host and at least a second memory module of a second host, and

the second host is connected to the host via a switch configured to operate with a cache coherent protocol.

9 . The method of claim 1 , wherein the list of requests is configured to store memory requests from remote devices that have the prefetch option enabled.

10 . A device for managing a memory pool, the device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the device to:

add a memory request to a list of requests based on a determination that a prefetch option in the memory request is enabled;

determine that performing the memory request satisfies a timing condition and a transaction condition indicated in the memory request;

place, in a position of a command queue, a command that is generated based on the determination that performing the memory request satisfies the timing condition and the transaction condition; and

send a notification to a source of the memory request based on a determination that the command is executed.

11 . The device of claim 10 , wherein the position is selected to schedule execution of the command based on the determination that performing the memory request satisfies the timing condition and the transaction condition indicated in the memory request.

12 . The device of claim 10 , wherein satisfying the timing condition is based on a determination that the memory request is performed before a time indicated in the memory request.

13 . The device of claim 10 , wherein satisfying the transaction condition is based on a determination that the memory request is performed after execution of a transaction indicated in the memory request.

14 . The device of claim 10 , wherein a location of the position is selected based on a position of a second position of the command queue that holds the transaction indicated in the memory request.

15 . The device of claim 10 , wherein a prefetch manager generates the command and adds the command to the command queue based on sending a message to the prefetch manager indicating that the timing condition and the transaction condition are satisfied.

16 . The device of claim 10 , wherein the command is added to the command queue based on a determination that the source is remote from a host that is processing the memory request.

17 . The device of claim 16 , wherein:

the memory pool comprises a memory space provided by a first memory module of the host and at least a second memory module of a second host, and

the second host is connected to the host via a switch configured to operate with a cache coherent protocol.

18 . A non-transitory computer-readable medium storing code that comprises instructions executable by a processor to:

add a memory request to a list of requests based on a determination that a prefetch option in the memory request is enabled;

determine that performing the memory request satisfies a timing condition and a transaction condition indicated in the memory request;

place, in a position of a command queue, a command that is generated based on the determination that performing the memory request satisfies the timing condition and the transaction condition; and

send a notification to a source of the memory request based on a determination that the command is executed.

19 . The non-transitory computer-readable medium of claim 18 , wherein the position is selected to schedule execution of the command based on the determination that performing the memory request satisfies the timing condition and the transaction condition indicated in the memory request.

20 . The non-transitory computer-readable medium of claim 18 , wherein satisfying the timing condition is based on a determination that the memory request is performed before a time indicated in the memory request.