Prepopulating page tables for memory of workloads during live migrations

US11586371B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11586371-B2
Application numberUS-202117384382-A
CountryUS
Kind codeB2
Filing dateJul 23, 2021
Priority dateJul 23, 2021
Publication dateFeb 21, 2023
Grant dateFeb 21, 2023

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 of populating page tables of an executing workload during migration of the executing workload from a source host to a destination host includes the steps of: before resuming the workload at the destination host, populating the page tables of the workload at the destination host, wherein the populating comprises inserting mappings from virtual addresses of the workload to physical addresses of system memory of the destination host; and upon completion of populating the page tables, resuming the workload at the destination host.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of populating page tables of an executing workload during migration of the workload from a source host to a destination host, wherein the page tables are populated at the destination host, the method comprising: migrating memory pages of the workload from system memory of the source host to system memory of the destination host; before resuming the workload at the destination host, populating the page tables, wherein the populating of the page tables comprises inserting mappings from a first set of virtual addresses of the workload to a first set of physical addresses of the system memory of the destination host, and the first set of virtual addresses corresponds to a first set of the migrated memory pages; and upon completion of the populating of the page tables, while the page tables do not contain any mappings from a second set of virtual addresses of the workload to a second set of physical addresses of the system memory of the destination host, resuming the workload at the destination host, wherein the second set of virtual addresses corresponds to a second set of the migrated memory pages. 2. The method of claim 1 , wherein the workload is a virtual machine (VM), the page tables are nested page tables of a virtualization software layer, the first and second sets of virtual addresses are guest physical page numbers of the VM, and the first and second sets of physical addresses are machine page numbers of the system memory of the destination host. 3. The method of claim 1 , further comprising: after the resuming of the workload at the destination host, further populating the page tables for the second set of the migrated memory pages as the second set of the migrated memory pages are accessed by the workload, wherein the populating of the page tables for the second set of the migrated memory pages comprises inserting mappings from the second set of virtual addresses to the second set of physical addresses. 4. The method of claim 1 , wherein the first set of the migrated memory pages are memory pages that are modified during the migration of the workload. 5. The method of claim 4 , wherein each of the first set of physical addresses references a memory page that is larger than each of the first set of the migrated memory pages, and the larger memory pages include the first set of the migrated memory pages and other memory pages that are read from during the migration of the workload. 6. The method of claim 1 , further comprising: setting a predetermined amount of time for the populating of the page tables, wherein the workload is resumed at the destination host in response to the predetermined amount of time elapsing. 7. The method of claim 1 , further comprising: determining to populate the page tables, for the first set of the migrated memory pages before the resuming of the VM at the destination host, based on each of the first set of the migrated memory pages meeting access-recency or access-frequency criteria. 8. A non-transitory computer readable medium comprising instructions that are executable by a destination host, wherein the instructions when executed cause the destination host to carry out a method of populating page tables of an executing workload during migration of the workload from a source host to the destination host, said method comprising: migrating memory pages of the workload from system memory of the source host to system memory of the destination host; before resuming the workload at the destination host, populating the page tables, wherein the populating of the page tables comprises inserting mappings from a first set of virtual addresses of the workload to a first set of physical addresses of the system memory of the destination host, and the first set of virtual addresses corresponds to a first set of the migrated memory pages; and upon completion of the populating of the page tables, while the page tables do not contain any mappings from a second set of virtual addresses of the workload to a second set of physical addresses of the system memory of the destination host, resuming the workload at the destination host, wherein the second set of virtual addresses corresponds to a second set of the migrated memory pages. 9. The non-transitory computer readable medium of claim 8 , wherein the workload is a virtual machine (VM), the page tables of are nested page tables of a virtualization software layer, the first and second sets of virtual addresses are guest physical page numbers of the VM, and the first and second sets of physical addresses are machine page numbers of the system memory of the destination host. 10. The non-transitory computer readable medium of claim 8 , the method further comprising: after the resuming of the workload at the destination host, further populating the page tables for the second set of the migrated memory pages as the second set of the migrated memory pages are accessed by the workload, wherein the populating of the page tables for the second set of the migrated memory pages comprises inserting mappings from the second set of virtual addresses to the second set of physical addresses. 11. The non-transitory computer readable medium of claim 8 , wherein the first set of the migrated memory pages are memory pages that are modified during the migration of the workload. 12. The non-transitory computer readable medium of claim 11 , wherein each of the first set of physical addresses references a memory page that is larger than each of the first set of the migrated memory pages, and the larger memory pages include the first set of the migrated memory pages and other memory pages that are read from during the migration of the workload. 13. The non-transitory computer readable medium of claim 8 , the method further comprising: setting a predetermined amount of time for the populating of the page tables, wherein the workload is resumed at the destination host in response to the predetermined amount of time elapsing. 14. The non-transitory computer readable medium of claim 8 , the method further comprising: determining to populate the page tables, for the first set of the migrated memory pages before the resuming of the VM at the destination host, based on each of the first set of the migrated memory pages meeting access-recency or access-frequency criteria. 15. A computer system comprising: a source host; and a destination host configured to carry out a method of populating page tables of an executing workload during migration of the workload from the source host to the destination host, the method comprising: migrating memory pages of the workload from system memory of the source host to system memory of the destination host; before resuming the workload, populating the page tables, wherein the populating of the page tables comprises inserting mappings from a first set of virtual addresses of the workload to a first set of physical addresses of the system memory of the destination host, and the first set of virtual addresses corresponds to a first set of the migrated memory pages; and upon completion of the populating of the page tables, while the page tables do not contain any mappings from a second set of virtual addresses of the workload to a second set of physical addresses of the system memory of the destination host, resuming the workload, wherein the second set of virtual addresses corresponds to a second set of the migrated memory pages. 16. The computer system of claim 15 , wherein the workload is a virtual machine (VM), the page tables are nested page tables of a virtualization software layer, t

Assignees

Inventors

Classifications

  • Memory management, e.g. access or allocation · CPC title

  • Distribution of virtual machine instances; Migration and load balancing · CPC title

  • Hypervisor-specific management and integration aspects · CPC title

  • G06F3/0647Primary

    Migration mechanisms · CPC title

  • Starting, stopping, suspending or resuming virtual machine instances · 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 US11586371B2 cover?
A method of populating page tables of an executing workload during migration of the executing workload from a source host to a destination host includes the steps of: before resuming the workload at the destination host, populating the page tables of the workload at the destination host, wherein the populating comprises inserting mappings from virtual addresses of the workload to physical addre…
Who is the assignee on this patent?
Vmware Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/45558. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 21 2023 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).