path: root/src/gallium/auxiliary/util/u_inlines.h
diff options
authorMarek Olšák <>2021-04-28 19:25:53 -0400
committerMarge Bot <>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 <> Acked-By: Mike Blumenkrantz <> Part-of: <>
Diffstat (limited to 'src/gallium/auxiliary/util/u_inlines.h')
0 files changed, 0 insertions, 0 deletions