Multi-Format Lossless Compression for Graphics Cache Bandwidth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In graphics processing, the challenge lies in managing memory bandwidth efficiently, particularly in reducing memory bandwidth requirements to enhance rendering and graphics processing performance, as scaling memory bandwidth within graphics processing devices is non-trivial.
Innovation Solution
A method and apparatus for multi-format lossless compression of render target streams as they are evicted from the render cache within a graphics processor, utilizing a victim cache to store modified data and applying a lossless compression algorithm to reduce data size during transmission, thereby achieving write and read bandwidth savings.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If memory bandwidth is increased to meet rendering and graphics processing requirements, then processing performance is improved, but device complexity and scalability are worsened
Solution Approach 1:
The patent extracts only the essential color information from full cache lines by identifying and storing only modified pixels in a compact format, separating necessary data from redundant data to reduce memory bandwidth requirements while maintaining processing performance
Solution Approach 2:
Instead of storing all cache lines in full format, the patent inverts the approach by storing only the differential color information for modified pixels, transforming the storage strategy from comprehensive to selective, thereby reducing bandwidth requirements
2Device complexity
If memory bandwidth is reduced to simplify device scaling, then device complexity is improved, but rendering and graphics processing performance are worsened
Solution Approach 1:
The patent changes the data representation parameters by storing color information in a compressed differential format rather than full precision, allowing reduced bandwidth transmission while preserving the ability to reconstruct original color values for rendering operations
Solution Approach 2:
The patent introduces an intermediary compression/formatting mechanism that transforms cache line data into a compact representation for storage, enabling reduced bandwidth usage while maintaining the capability to restore full-quality data when needed for graphics processing
3Reliability
If full cache lines are stored without compression, then data integrity is maintained, but memory bandwidth requirements increase
Solution Approach 1:
The patent extracts only the modified pixel information from full cache lines, storing color data only where changes occurred rather than storing complete cache lines, thereby reducing the quantity of stored data while maintaining integrity of the modified information
Solution Approach 2:
The patent applies different storage strategies to different portions of cache line data: uncompressed storage for unchanged regions and compressed differential storage for modified regions, optimizing bandwidth usage by applying quality preservation only where necessary
4Quantity of substance
If data is compressed to reduce memory bandwidth requirements, then bandwidth efficiency is improved, but compression and decompression complexity increase
Solution Approach 1:
The patent employs parameter changes through differential encoding and format selection that adaptively choose compression strategies based on the characteristics of the data being stored, achieving bandwidth reduction through relatively simple transformations rather than complex compression algorithms
Data Source
AI summary
Embodiments provide for a graphics processing apparatus including a cache memory and logic coupled to the cache memory to compress color data output from the first cache memory. In one embodiment the cache memory is a render cache. In one embodiment the cache memory is a victim data cache. In one embodiment the first cache memory is a render cache coupled to a victim data cache and logic is configured to compress color data evicted from the render cache and the victim data cache. The compression can include a target compression ratio to which the data is to be compressed.


