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

Hans-Kristian Arntzen post at arntzen-software.no
Mon Oct 7 07:17:45 CDT 2019


On 9/30/19 9:40 PM, Henri Verbeet wrote:
> 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.

Any updates on this and the follow-up 6/6 patch? They were marked as 
superseded on the list for some reason, but that's wrong.

Cheers,
Hans-Kristian




More information about the wine-devel mailing list