[PATCH 5/6] vkd3d: Optimize GPU VA allocator.

Henri Verbeet hverbeet at gmail.com
Mon Sep 30 14:40:39 CDT 2019


On Mon, 30 Sep 2019 at 17:48, Hans-Kristian Arntzen
<post at arntzen-software.no> wrote:
> The GPU VA allocator was allocating memory in a way where dereferencing
> GPU VA required a lock + bsearch to find the right VA range.
>
> Rather than going this route, we turn the common case into O(1) and
> lockless by creating a slab allocator which allows us to lookup a ptr
> directly from GPU VA with (VA - Base) / PageSize.
>
> The number of allocations in the fast path must be limited since we
> cannot trivially grow the allocator while remaining lock-free for
> dereferences.
>
I need to review this in more detail, but on first sight it makes sense.



More information about the wine-devel mailing list