Vertex Buffer Cache-Line Packing for Lower DDR Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current techniques do not optimize cache efficiency for graphics assets during graphics processing, leading to inefficiencies in handling vertex buffer objects (VBOs).

Innovation Solution

A method to determine and store logically contiguous segments of vertex attribute buffers in cache lines (CLs) to efficiently retrieve and process vertex buffer objects (VBOs) during binning or rendering passes, optimizing cache utilization and minimizing DDR bandwidth traffic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If vertex buffer objects are stored in traditional memory access patterns, then memory capacity is sufficient, but cache efficiency is poor and DDR bandwidth traffic is excessive

Engineering Contradiction:
ImproveDDR bandwidth trafficVSAvoidcache management complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent segments the vertex attribute buffer into logically contiguous segments that can be independently stored in cache lines. This segmentation allows the system to identify and cache only the relevant VBO elements together, improving cache efficiency without requiring complete reorganization of the entire buffer structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary determination of whether a logically contiguous segment is capable of being stored in a cache line before attempting storage. This advance checking prevents wasted cache operations and ensures that only suitable segments are cached, reducing unnecessary DDR traffic while maintaining simple cache management.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If logically contiguous segments are stored in cache lines, then cache efficiency improves and DDR bandwidth traffic reduces, but processing complexity increases

Engineering Contradiction:
Improvegraphics processing performanceVSAvoidsegment identification and storage logic
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by making different parts of the buffer accessible in different ways: logically contiguous segments are stored in cache lines for fast access, while other portions remain in traditional memory. This allows the system to optimize frequently accessed VBO elements without complicating the entire memory management system.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the storage parameter from traditional sequential memory addressing to cache-line-based logical contiguity. By determining whether segments are capable of being stored in cache lines and adjusting the storage approach accordingly, the system improves processing performance while managing complexity through parameter-based decision making.

Inventive Principle:
Principle #35Parameter changes

3Loss of energy

If traditional vertex buffer access methods are used, then implementation is simple, but cache efficiency is poor leading to increased DDR bandwidth traffic

Engineering Contradiction:
ImproveDDR bandwidth trafficVSAvoidcache line storage operation
Core Design Contradiction:
Loss of energyVSEase of operation

Solution Approach 1:

The patent enables the system to self-determine whether a logically contiguous segment is capable of being stored in a cache line based on the segment's characteristics. This self-service approach automates the cache optimization process without requiring complex external control, reducing DDR traffic while keeping operations straightforward.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20260065409A1Cache efficient fetches of vertex buffer objects
Publication Date: 2026.03.05 QUALCOMM INC
  • US20260065409A1 patent drawing
  • US20260065409A1 patent drawing
  • US20260065409A1 patent drawing

AI summary

This disclosure provides systems, devices, apparatus, and methods, including computer programs encoded on storage media, for improving the cache efficiency for fetching vertex buffer objects (VBOs). A graphics processor may determine that a logically contiguous segment of a vertex attribute buffer comprising a plurality of VBOs that include a first VBO element and a second VBO element is capable of being stored in a cache line (CL). The graphics processor may store the logically contiguous segment in the CL based on the determination. The graphics processor may retrieve the second VBO element from the CL after storage of the logically contiguous segment in the CL. The graphics processor may process the retrieved second VBO element in at least one of a binning pass or a rendering pass. The graphics processor may output an indication of the processed second VBO element.