Graphics processing
AssigneeArm Limited
InventorRaymond Morris Smith
Life of this patent
Estimating the term…
Abstract
A graphics processing system comprises a memory that stores graphics data. The graphics data stored in the memory is accessible using virtual memory addresses that map to physical memory addresses in the memory. The graphics processing system further comprises page merging circuitry configured to use metadata provided for a set of graphics data to determine whether any pages of the set of graphics data are similar to each other. The pages of the set of graphics data that are determined as being similar to each other are merged by mapping the virtual memory addresses for those pages to the same physical memory address in the memory. The page merging process can provide a way to reduce the number of physical memory addresses needed to store the pages of the set of graphics data in the memory.
Claims19
A method of operating a graphics processing system comprising:
- for a plurality of pages, determining whether a page of a set of graphics data stored or to be stored in a memory of the graphics processing system is substantially uniform or solid in terms of data values;
- determining that any of the plurality of pages of the set of graphics data stored or to be stored in the memory of the graphics processing system not being substantially uniform or solid in terms of data values is not similar to any stored pages of the set of graphics data stored in the memory;
- for a page of the set of graphics data stored or to be stored in the memory of the graphics processing system determined as being substantially uniform or solid in terms of data values, determining whether the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is similar to a stored page of the set of graphics data stored in the memory;
- for a page of the set of graphics data stored or to be stored in the memory determined as being similar to a particular stored page of the set of graphics data stored in the memory, mapping a virtual memory address for the page of the set of graphics data stored or to be stored in the memory of the graphics processing system to the same physical memory address as the stored page stored in the memory which is similar to the page of the set of graphics data stored or to be stored in the memory of the graphics processing system.
A graphics processing system comprising:
- a memory configured to store graphics data;
- memory management unit circuitry configured to access pages of graphics data stored in the memory using virtual memory addresses that map to physical memory addresses in the memory;
- and
- page merging circuitry configured to:
- determine whether a page of a set of graphics data stored or to be stored in the memory is substantially uniform or solid in terms of data values;
- when the page of the set of graphics data stored or to be stored in the memory is determined as being substantially uniform or solid in terms of data values, determine whether the page of the set of graphics data stored or to be stored in the memory is similar to a stored page of the set of graphics data stored in the memory;
- when the page of the set of graphics data stored or to be stored in the memory is determined as being similar to a stored page of the set of graphics data stored in the memory, map a virtual memory address for the page of the set of graphics data stored or to be stored in the memory to the same physical memory address as the stored page of the set of graphics data stored in the memory;
- when the page of the set of graphics data stored or to be stored in the memory is determined as not being substantially uniform or solid in terms of data values, determine that the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is not similar to any stored pages of the set of graphics data stored in the memory.
A non-transitory computer readable storage medium storing computer software code which when executing on a processor of a graphics processing system performs a method comprising:
- determining whether a page of a set of graphics data stored or to be stored in a memory of the graphics processing system is substantially uniform or solid in terms of data values;
- when it is determined that the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is substantially uniform or solid in terms of data values, determining whether the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is similar to a stored page of the set of graphics data stored in the memory;
- when it is determined that the particular page of the set of graphics data stored or to be stored in the memory is similar to a stored page of the set of graphics data stored in the memory, mapping a virtual memory address for the page of the set of graphics data stored or to be stored in the memory to the same physical memory address as the stored page of the set of graphics data stored in the memory;
- when it is determined that the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is not substantially uniform or solid in terms of data values, determining that the page of the set of graphics data stored or to be stored in the memory of the graphics processing system is not similar to any stored pages of the set of graphics data stored in the memory.
Dependencies are inferred from the claim text.