diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-29 07:49:09 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-29 20:49:47 -0400 |
| commit | 15eef40dd12c2b751d5b1cac57dd8f3602e2d133 (patch) | |
| tree | 44b191586781c8c11e0e0279983ef9b45abe6c34 /src/video_core/buffer_cache/buffer_cache.h | |
| parent | 4d7558e25bb0a59d90153bc8dfdca4b4e1fc2f48 (diff) | |
maxwell_3d: drop state register writes that keep the register's value
Title 1 makes ~6 million 3D register writes a second and ~60% of them write the value
the register already holds (counted with EDEN_NX2_GPU_PROFILE), most from macro memo
replays. For registers without side effects (not in execution_mask: draws, clears,
constant buffer data and binds, semaphores, ...) such a write changes nothing, but it
set dirty flags that made the next draw re-check that state. CallMethod and the sunk
writes now skip them after shadow RAM processing. Two profiled runs each: macro calls
169 ns instead of 185, draw setup 5.80 us instead of 5.95. EDEN_NX2_SKIP_SAME=0 turns it
off.
Diffstat (limited to 'src/video_core/buffer_cache/buffer_cache.h')
0 files changed, 0 insertions, 0 deletions
