Memory sharing via a unified memory architecture
AssigneeIntel Corporation
InventorsJayanth N. Rao, Murali Sundaresan
Life of this patent
Estimating the term…
Abstract
A method and system for sharing memory between a central processing unit (CPU) and a graphics processing unit (GPU) of a computing device are disclosed herein. The method includes allocating a surface within a physical memory and mapping the surface to a plurality of virtual memory addresses within a CPU page table. The method also includes mapping the surface to a plurality of graphics virtual memory addresses within an I/O device page table.
Claims20
A mobile computing system, comprising:
- an integrated display device;
- a system memory to store instructions and data;
- and
- a processing apparatus coupled with the system memory, the processing apparatus including:
- a central processing unit (CPU);
- a graphics processing unit (GPU) coupled with the CPU on a same die, the CPU and the GPU to share a region of the system memory, the GPU and CPU to have a shared virtual address space to reference the region of the system memory, wherein at least a portion of the region of the system memory is to be mapped within a page table associated with the GPU;
- and
- a shared last-level cache coupled with the CPU and the GPU, the shared last-level cache to cache data corresponding to respective memory accesses to the shared virtual address space by the CPU and the GPU.
A mobile computing device including:
- a memory device;
- and
- a processing apparatus coupled with the memory device, the processing apparatus including:
- a central processing unit (CPU);
- a graphics processing unit (GPU) coupled with the CPU on a same die, the CPU and the GPU to share a region of memory of the memory device, the GPU and CPU to have a shared virtual address space to reference the region of the memory, wherein at least a portion of the region of the memory is to be mapped within a page table associated with the GPU;
- and
- a shared last-level cache coupled with the CPU and the GPU, the shared last-level cache to cache data corresponding to respective memory accesses to the shared virtual address space by the CPU and the GPU.
A non-transitory machine-readable medium storing instructions to cause one or more processors to perform operations to enable sharing of virtual memory, the operations including:
- sharing a region of memory between a central processing unit (CPU) and a graphics processing unit (GPU) on a same die, the GPU and CPU having a shared virtual address space within the region of the memory;
- and
- accessing data within the region of the memory by the CPU and the GPU, wherein at least a portion of the region of the memory is mapped within a page table associated with the GPU, wherein accessing data with the region of the memory by the CPU and the GPU includes accessing the data within a last-level cache shared by the CPU and the GPU.
Dependencies are inferred from the claim text.