summaryrefslogtreecommitdiff
path: root/src/gallium/auxiliary/util/u_inlines.h
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2021-04-28 19:25:53 -0400
committerMarge Bot <eric+marge@anholt.net>2021-05-05 05:17:25 +0000
commit1233c90ab4aa85331dadc7f5e5243ac8252b6669 (patch)
tree85212eb1e7054f6421aafece44f71c4e5f4a87ef /src/gallium/auxiliary/util/u_inlines.h
parent9ee2b8209a54dd00394034ad77e4222ec6f7b590 (diff)
gallium/u_threaded: rewrite slot layout to reduce wasted space
A lot of space was wasted due to 16-byte alignment for slots. This new layout tries to match glthread. Highlights: - the slot size changed to 8 bytes (was 16), so less padding - the header size changed to 4 bytes (was 8), so some calls can use the remaining 4 bytes in the slot for parameters - draw merging merges up to 307 draws (was 256) due to space savings - parameters in structures are sorted based on implicit type alignment (uint8_t first, pointers last) to make it easier to utilize the 4 bytes after the header and to remove holes - some structures use smaller types for parameters than pipe_context where it's safe (e.g. clear uses float instead of double for depth) Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.eric.pelloux-prayer@amd.com> Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10606>
Diffstat (limited to 'src/gallium/auxiliary/util/u_inlines.h')
0 files changed, 0 insertions, 0 deletions