diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-28 20:43:00 -0400 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-10-28 20:43:00 -0400 |
| commit | e4deef6ba4ea76aac997ed3102f8e9801fd170b9 (patch) | |
| tree | b80a4d69bdbfafc82f6d828f1f7ae069c81184ad /src/video_core/textures/workers.cpp | |
| parent | 2bd0285a383652b086f51ef779f083f0bce62670 (diff) | |
Native MME: decode each instruction once; reuse the parameter FIFO
The Turing macro interpreter re-extracted every field of each 96-bit
instruction on every execution and copied the register file per
instruction; title 1's GPU thread spent about half its busy time there.
Instructions are now decoded once per PC (re-decoded when their words
change) and both lanes' operands are read up front instead of copying
the registers. The parameter FIFO is a member instead of a vector
allocated per macro call. Rendering checked unchanged on the attract
loop; the GPU thread went from ~68% to ~45-50% busy.
Diffstat (limited to 'src/video_core/textures/workers.cpp')
0 files changed, 0 insertions, 0 deletions
