US Patent Application 18362686. Private Memory Management using Utility Thread simplified abstract
Contents
Private Memory Management using Utility Thread
Organization Name
Apple Inc.==Inventor(s)==
[[Category:Benjiman L. Goodman of Cedar Park TX (US)]]
[[Category:Terence M. Potter of Austin TX (US)]]
[[Category:Anjana Rajendran of Austin TX (US)]]
[[Category:Mark I. Luffel of Austin TX (US)]]
[[Category:William V. Miller of Austin TX (US)]]
Private Memory Management using Utility Thread - A simplified explanation of the abstract
This abstract first appeared for US patent application 18362686 titled 'Private Memory Management using Utility Thread
Simplified Explanation
- This patent application describes techniques for private memory management using a mapping thread. - The techniques are particularly useful for graphics processors and involve generating a pool of private memory pages for multiple threads of graphics work. - The processor maintains a translation table that maps private memory addresses to virtual addresses based on thread identifiers. - A mapping thread is executed to allocate a private memory page for a requesting thread, select a page from the pool, and map it in the translation table. - The requesting thread can then access its private memory space by executing instructions that translate the private memory address to a virtual address using the mapped page in the translation table. - The mapping thread is persistent, meaning it is allocated resources for the entire duration of the graphics work. - This technique improves private memory management efficiency and performance for graphics processors.
Original Abstract Submitted
Techniques are disclosed relating to private memory management using a mapping thread, which may be persistent. In some embodiments, a graphics processor is configured to generate a pool of private memory pages for a set of graphics work that includes multiple threads. The processor may maintain a translation table configured to map private memory addresses to virtual addresses based on identifiers of the threads. The processor may execute a mapping thread to receive a request to allocate a private memory page for a requesting thread, select a private memory page from the pool in response to the request, and map the selected page in the translation table for the requesting. The processor may then execute one or more instructions of the requesting thread to access a private memory space, wherein the execution includes translation of a private memory address to a virtual address based on the mapped page in the translation table. The mapping thread may be a persistent thread for which resources are allocated for an entirety of a time interval over which the set of graphics work is executed.