[Mesa-dev] RFC uniform packing for gallium

Timothy Arceri tarceri at itsqueeze.com
Tue Jun 20 01:50:29 UTC 2017


I've been working on this on and off and wanted to get some feedback on
the approach I've taken before putting to much time in fixing the remaining
bugs. There are around 150 piglit tests still failing.

The main goal of this series is to reduce the cpu overhead cause by
_mesa_propagate_uniforms_to_driver_storage(). The function is slow since we
need to deal with strides etc because we are copying packed data to an
unpacked destination. It's also copying data that we have only just copied
to anouther duplicate uniform storage that gets created by the linker.

This series fixes both of these issues and also reduces the size of the
drivers const buffer as a side effect.

Patches 2-3 just rework the way we use the param list and can be commited
now.

The remaining add the packing support enabled by the
PackedDriverUniformStorage const.

You can get the series in my test4 branch [1].

[1] https://github.com/tarceri/Mesa.git



More information about the mesa-dev mailing list