Files
mesa/src/util
Jason Ekstrand aee004a7c8 util/sparse_array: Stash the node level in the node pointer
This reworks the data structure a bit and, in my view, simplifies it.
Instead of each node having a header which has the node level in it, we
use the bottom 6 bits of the pointer for that.  This requires us to
allocate with the os_malloc/free_aligned helpers (which call into
posix_memalign on Linux) but cache-line aligning our allocations is
actually probably a good thing given that we're doing atomics on them.

The primary advantages to doing this is that it changes the number of
memory accesses per tree level from 2 to 1 when walking the tree because
we no longer have to look at node->level.

Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4228>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4228>
2020-03-20 15:31:10 -05:00
..
2019-10-10 16:33:04 -07:00
2019-08-08 22:02:54 +01:00
2018-10-10 13:13:12 -05:00
2019-09-19 19:56:22 +00:00
2019-03-11 13:13:52 -07:00
2019-03-11 13:13:52 -07:00
2019-08-15 20:23:44 +02:00
2019-08-02 18:38:52 +01:00
2019-10-28 11:24:39 +00:00
2019-09-06 00:45:11 +00:00
2019-05-31 19:14:30 +02:00
2019-10-09 12:55:15 -07:00
2019-03-14 22:41:08 +00:00
2018-11-27 15:44:02 -05:00
2019-10-28 11:24:38 +00:00
2019-08-31 13:26:10 -07:00
2020-01-23 17:06:57 +00:00