Vertex Attribute Caching for Higher Primitive Assembly Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing graphics processing systems face inefficiencies in obtaining vertex attributes for primitives, particularly due to reliance on a single large storage for processed vertex attributes, which can hinder throughput and efficiency.
Innovation Solution
Implementing a dual storage system where processed vertex attributes are stored in a smaller, dedicated second storage for efficient retrieval, with a larger first storage as a fallback, allowing for predictable vertex attribute loading based on the sequential processing of primitives.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a single large storage is used for processed vertex attributes, then storage capacity is sufficient, but access efficiency and throughput are reduced
Solution Approach 1:
The patent divides the storage system into two separate storages: a first storage for processed vertex attributes and a second storage for unprocessed vertex attributes. This segmentation allows the system to selectively access the appropriate storage based on whether vertex attribute processing is needed, improving retrieval efficiency while maintaining sufficient total storage capacity.
2Speed
If a smaller dedicated storage is used for processed vertex attributes, then access speed improves, but storage capacity is reduced
Solution Approach 1:
The patent creates a dedicated second storage specifically for unprocessed vertex attributes, separating it from the first storage that holds processed attributes. This dedicated storage structure enables faster access to unprocessed attributes when needed, while the combined capacity of both storages maintains sufficient total storage capacity.
3Device complexity
If vertex attributes are always read from the first storage, then storage management is simple, but processing efficiency is reduced due to unnecessary data transfer
Solution Approach 1:
The patent implements a dynamic storage selection mechanism where the system determines whether to read vertex attributes from the first storage or the second storage based on whether processing is needed. This dynamic approach optimizes processing efficiency by avoiding unnecessary data transfers, while the clear rules for selection keep management complexity manageable.
Solution Approach 2:
The second storage acts as an intermediary structure that holds unprocessed vertex attributes separately. This intermediary storage allows the system to efficiently retrieve unprocessed attributes when needed without accessing the first storage, reducing unnecessary data transfers and improving overall processing efficiency.
Data Source
AI summary
When generating a graphics processing output by assembling a sequence of one or more of primitives to be processed, vertex attribute processing is performed for vertices of assembled primitives to generate one or more processed vertex attributes for vertices of the assembled primitives. Processed vertex attributes for vertices of assembled primitives are stored in a first storage, and additionally in a second storage. Then when obtaining processed vertex attributes for an assembled primitive, it is checked whether processed vertex attributes for the vertices of the primitive are present in the second storage, and when they are, the processed vertex attributes are read from the second storage, but when the processed vertex attributes are not in the second storage, they are read from the first storage instead.


