diff options
author | Eric Anholt <[email protected]> | 2017-01-04 14:08:10 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2018-08-08 16:45:44 -0700 |
commit | 25bee5ef9ea923bf0d99f5f8eb19082c449f3e53 (patch) | |
tree | 1fa6ac86f339ec7ffce5664ba8f450d1a2fe3a12 /src/util/texcompress_rgtc_tmp.h | |
parent | 3e06b918aab3c6a4ca30f5e935aa6996f7009d56 (diff) |
vc4: Handle partial loads/stores of tiled textures.
Previously, we would load out the tile-aligned area, update the raster
copy, and store it back. This was a huge cost for XPutImage calls to the
screen under glamor.
Instead, implement a general load/store path that walks over the source
x/y writing into the corresponding pixel of the destination (using clever
math from
https://fgiesen.wordpress.com/2011/01/17/texture-tiling-and-swizzling/).
If things are aligned, we go through the previous utile-at-a-time loop.
Improves x11perf -putimage10 performance by 139.777% +/- 2.83464% (n=5)
Improves x11perf -putimage100 performance by 383.908% +/- 22.6297% (n=11)
Improves x11perf -getimage10 performance by 2.75731% +/- 0.585054% (n=145)
Diffstat (limited to 'src/util/texcompress_rgtc_tmp.h')
0 files changed, 0 insertions, 0 deletions