System and method for page table caching memory

US11550728B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11550728-B2
Application numberUS-201916586183-A
CountryUS
Kind codeB2
Filing dateSep 27, 2019
Priority dateSep 27, 2019
Publication dateJan 10, 2023
Grant dateJan 10, 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 processing system includes a processor, a memory, and an operating system that are used to allocate a page table caching memory object (PTCM) for a user of the processing system. An allocation of the PTCM is requested from a PTCM allocation system. In order to allocate the PTCM, a plurality of physical memory pages from a memory are allocated to store a PTCM page table that is associated with the PTCM. A lockable region of a cache is designated to hold a copy of the PTCM page table, after which the lockable region of the cache is subsequently locked. The PTCM page table is populated with page table entries associated with the PTCM and copied to the locked region of the cache.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: receiving a request for allocation of at least one page table caching memory (PTCM) object at a PTCM allocation system; allocating, using the PTCM allocation system, a plurality of physical memory pages from a memory to store at least one PTCM page table associated with the at least one PTCM object; designating, at the PTCM allocation system, at least one lockable region of a cache to hold a copy of the at least one PTCM page table; locking, using the PTCM allocation system, the at least one lockable region of the cache by using a lock enable command; populating, using the PTCM allocation system, the at least one PTCM page table by transferring a plurality of page table entries associated with the at least one PTCM object to the at least one PTCM page table; and copying, using the PTCM allocation system and to the locked at least one lockable region of the cache, the at least one PTCM page table being populated by providing a duplicate of the at least one PTCM page table being populated to the locked at least one lockable region of the cache. 2. The method of claim 1 , wherein: the at least one PTCM object includes at least one additional PTCM object of a plurality of PTCM objects. 3. The method of claim 1 , wherein: the at least one lockable region includes at least one second, additional lockable region of a plurality of lockable regions. 4. The method of claim 1 , wherein: populating the at least one PTCM page table and copying the at least one PTCM page table occur simultaneously. 5. The method of claim 1 , wherein: allocating the plurality of physical memory pages to store the at least one PTCM page table is initiated by a system call or a kernel boot parameter. 6. The method of claim 1 , wherein: the at least one PTCM page table is restored to the cache that has been invalidated by a system management function. 7. The method of claim 1 , further comprising: receiving, at the PTCM allocation system, a request for deallocation of the at least one PTCM object; unlocking, using the PTCM allocation system, the locked at least one lockable region of the cache by using a lock disable command; and returning the at least one PTCM object and the at least one PTCM page table to a free store of the physical memory pages. 8. The method of claim 1 , wherein: the at least one PTCM object is a guest PTCM object associated with a virtual machine. 9. The method of claim 8 , wherein: the at least one PTCM page table is associated with the guest PTCM object of the virtual machine, at least one PTCM page table being augmented by at least one of a PTCM shadow page table or a PTCM nested page table. 10. A processing system, comprising: a processor configured to be coupled to a memory, wherein the processing system is configured to: receive a request for allocation of at least one page table caching memory (PTCM) object at a PTCM allocation system; allocate, using the PTCM allocation system, a plurality of physical memory pages from the memory to store at least one PTCM page table associated with the at least one PTCM object; designate, at the PTCM allocation system, at least one lockable region of a cache to hold a copy of the at least one PTCM page table; lock, using the PTCM allocation system, the at least one lockable region of the cache by using a lock enable command; populate, using the PTCM allocation system, the at least one PTCM page table by transferring a plurality of page table entries associated with the at least one PTCM object to the at least one PTCM page table; and copy, using the PTCM allocation system and to the locked at least one lockable region of the cache, the at least one PTCM page table being populated by providing a duplicate of the at least one PTCM page table being populated to the locked at least one lockable region of the cache. 11. The processing system of claim 10 , wherein: the at least one PTCM object includes at least one additional PTCM object of a plurality of PTCM objects. 12. The processing system of claim 10 , wherein: the at least one lockable region includes at least one second, additional lockable region of a plurality of lockable regions. 13. The processing system of claim 10 , wherein: the PTCM allocation system is configured to populate the at least one PTCM page table and copy the at least one PTCM page table simultaneously. 14. The processing system of claim 10 , wherein: the PTCM allocation system is configured to allocate the plurality of physical memory pages to store the at least one PTCM page tables such that the allocation is initiated by a system call or a kernel boot parameter. 15. The processing system of claim 10 , wherein: the at least one PTCM page table is restored to the cache that has been invalidated by a system management function. 16. The processing system of claim 10 , the processing system further is configured to: request deallocation of the at least one PTCM object; unlock the locked at least one lockable region of the cache; and return the at least one PTCM object and the at least one PTCM page table to free store of the physical memory pages. 17. The processing system of claim 10 , wherein: the at least one PTCM object is at least one guest PTCM object associated with a virtual machine, the at least one PTCM page table being associated with the at least one guest PTCM object of the virtual machine and augmented by at least one of a PTCM shadow page table or a PTCM nested page table. 18. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a machine to perform operations, comprising: receiving a request for allocation of at least one page table caching memory (PTCM) object at a PTCM allocation system; allocating, using the PTCM allocation system, a plurality of physical memory pages from a memory to store at least one PTCM page table associated with the at least one PTCM object; designating, using the PTCM allocation system, at least one lockable region of a cache to hold a copy of the at least one PTCM page table; locking, using the PTCM allocation system, the at least one lockable region of the cache using a lock enable command; populating, using the PTCM allocation system, the at least one PTCM page table with a plurality of page table entries associated with the at least one PTCM object; and copying, using the PTCM allocation system and to the locked at least one lockable region of the cache, the at least one PTCM page table being populated by providing a duplicate of the at least one PTCM page table being populated to the locked at least one lockable region of the cache. 19. The non-transitory machine-readable medium of claim 18 , wherein: populating the at least one PTCM page table and copying the at least one PTCM page table occur simultaneously. 20. The non-transitory machine-readable medium of claim 18 , further comprising: receiving a request for deallocation of the at least one PTCM object at the PTCM allocation system; unlocking, using the PTCM allocation system, the locked at least one lockable region of the cache using a lock disable command; and returning the at least one PTCM object and the at least one PTCM page table to free store of the physical memory pages.

Assignees

Inventors

Classifications

  • of parts of caches, e.g. directory or tag array · CPC title

  • in a virtual system, e.g. with translation means · CPC title

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

  • where tasks reside in different layers, e.g. user- and kernel-space · CPC title

  • using clearing, invalidating or resetting means · 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 US11550728B2 cover?
A processing system includes a processor, a memory, and an operating system that are used to allocate a page table caching memory object (PTCM) for a user of the processing system. An allocation of the PTCM is requested from a PTCM allocation system. In order to allocate the PTCM, a plurality of physical memory pages from a memory are allocated to store a PTCM page table that is associated with…
Who is the assignee on this patent?
Advanced Micro Devices Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/1009. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 10 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).