Apparatus and method for intelligent memory page management

US12579073B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12579073-B2
Application numberUS-202217751557-A
CountryUS
Kind codeB2
Filing dateMay 23, 2022
Priority dateMay 23, 2022
Publication dateMar 17, 2026
Grant dateMar 17, 2026

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method is described. The method includes determining that a memory page is in one of an active state and an idle state from meta data that is maintained for the memory page. The method includes recording a past history of active/idle state determinations that were previously made for the memory page. The method includes training a neural network on the past history of the memory page. The method includes using the neural network to predict one of a future active state and future idle state for the memory page. The method includes determining a location for the memory page based on the past history of the memory page and the predicted future state of the memory page, the location being one of a faster memory and a slower memory. The method includes moving the memory page to the location from the other one of the faster memory and the slower memory.

First claim

Opening claim text (preview).

The invention claimed is: 1 . A method, comprising: determining that a memory page is in an active state or an idle state from meta data that is maintained for the memory page; recording a past history of active/idle state determinations that were previously made for the memory page; training, at a sampling interval, a neural network on the past history of the memory page; training, at a different sampling interval, a different neural network on the past history of the memory page; using both the neural network and the different neural network to predict a future active state or a future idle state for the memory page; determining a location for the memory page based on the past history of the memory page and the predicted future state of the memory page, the location being a faster memory or a slower memory; and moving the memory page to the location. 2 . The method of claim 1 wherein the faster memory is a local memory and the slower memory is a remote memory. 3 . The method of claim 2 wherein the remote memory is a pooled memory. 4 . The method of claim 1 wherein the sampling interval is based on each update to the past history of the memory page and the different sampling interval is based on multiple updates to the past history of the memory page. 5 . The method of claim 4 wherein using both the neural network and the different neural network to predict the future active state or the future idle state for the memory page comprises using both the neural network and the different neural network following a same time increment. 6 . The method of claim 1 wherein the method further comprises: observing active/idle state determinations made for the memory page after the moving of the memory page; recognizing that the location was an incorrect determination for the memory page; and changing a formulation used for the determining. 7 . The method of claim 1 wherein the method further comprises maintaining a list of memory pages and their determined locations. 8 . A non-transitory machine readable storage medium containing program code that when processed by a processor, cause the processor to: determine that a memory page is in an active state or an idle state from meta data that is maintained for the memory page; record a past history of active/idle state determinations that were previously made for the memory page; train, at a sampling interval, a neural network on the past history of the memory page; train, at a different sampling interval, a different neural network on the past history of the memory page; use both the neural network and the different neural network to predict a future active state or a future idle state for the memory page; determine a location for the memory page based on the past history of the memory page and the predicted future state of the memory page, the location being a faster memory or a slower memory; and move the memory page to the location. 9 . The non-transitory machine readable storage medium of claim 8 wherein the faster memory is a local memory and the slower memory is a remote memory. 10 . The non-transitory machine readable storage medium of claim 9 wherein the remote memory is a pooled memory. 11 . The non-transitory machine readable storage medium of claim 8 wherein the sampling interval is based on each update to the past history of the memory page and the different sampling interval is based on multiple updates to the past history of the memory page. 12 . The non-transitory machine readable storage medium of claim 11 wherein to use both the neural network and the different neural network to predict the future active state or the future idle state for the memory page comprises the program code to cause the processor to use both the neural network and the different neural network following a same time increment. 13 . The non-transitory machine readable storage medium of claim 12 wherein the program code is to further cause the processor to: observe active/idle state determinations made for the memory page after the moving of the memory page; recognize that the location was an incorrect determination for the memory page; and change a formulation used for the determining. 14 . The non-transitory machine readable storage medium of claim 8 wherein the program code is to further cause the processor to maintain a list of memory pages and their determined locations. 15 . A data center, comprising: a plurality of rack mounted computers communicatively coupled by a network; a memory pool coupled to the network; a processor of one of the rack mounted computers to execute program code stored in a machine readable medium to perform a method, comprising: determining that a memory page is in an active state or an idle state from meta data that is maintained for the memory page; recording a past history of active/idle state determinations that were previously made for the memory page; training, at a sampling interval, a neural network on the past history of the memory page; training, at a different sampling interval longer, a different neural network on the past history of the memory page; using both the neural network and the different neural network to predict a future active state or a future idle state for the memory page; determining a location for the memory page based on the past history of the memory page and the predicted future state of the memory page, the location being a local memory to the processor or the memory pool; and moving the memory page to the location. 16 . The data center of claim 15 wherein the sampling interval is based on each update to the past history of the memory page and the different sampling interval is based on multiple updates to the past history of the memory page. 17 . The data center of claim 16 wherein using both the neural network and the different neural network to predict the future active state or the future idle state for the memory page comprises using both the neural network and the different neural network following a same time increment. 18 . The data center of claim 15 wherein the method further comprises: training, at a second different sampling interval, a second different neural network on the past history of the memory page; and using the neural network, the different neural network and the second different neural network to predict the future active state or the future idle state for the memory page. 19 . The data center of claim 18 wherein the sampling interval is based on each update to the past history of the memory page, the different sampling interval is based on every second update to the past history of the memory page, and the second different sampling interval is based on every third update to the past history of the memory page. 20 . The data center of claim 19 wherein using the neural network, the different neural network and the second neural network to predict the future active state or the future idle state for the memory page comprises using the neural network, the different neural network and the second different neural network following a same time increment.

Assignees

Inventors

Classifications

  • G06N3/045Primary

    Combinations of networks · CPC title

  • Generating training patterns; Bootstrap methods, e.g. bagging or boosting · CPC title

  • Pool · CPC title

  • the resource being the memory · CPC title

  • Feedforward networks · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12579073B2 cover?
A method is described. The method includes determining that a memory page is in one of an active state and an idle state from meta data that is maintained for the memory page. The method includes recording a past history of active/idle state determinations that were previously made for the memory page. The method includes training a neural network on the past history of the memory page. The met…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06N3/045. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 17 2026 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).