[Mesa-dev] [PATCH 4/6] gallium/radeon: fix performance of buffer readbacks

Michel Dänzer michel at daenzer.net
Wed Feb 15 03:33:43 UTC 2017


On 14/02/17 11:09 PM, Marek Olšák wrote:
> On Tue, Feb 14, 2017 at 3:05 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>> On 13 February 2017 at 03:24, Michel Dänzer <michel at daenzer.net> wrote:
>>> On 10/02/17 08:27 PM, Marek Olšák wrote:
>>>> On Fri, Feb 10, 2017 at 12:22 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>>>>>  On 9 February 2017 at 11:56, Marek Olšák <maraeo at gmail.com> wrote:
>>>>>> From: Marek Olšák <marek.olsak at amd.com>
>>>>>>
>>>>>> We want cached GTT for all non-persistent read mappings.
>>>>>> Set level = 0 on purpose.
>>>>>>
>>>>>> Use dma_copy, because resource_copy_region causes a failure in the PBO
>>>>>> read of piglit/getteximage-luminance.
>>>>>>
>>>>>> If Rocket League used the READ flag, it should get cached GTT.
>>>>>>
>>>>> Does this patch resolve/mitigate the reported performance issues with
>>>>> Rocket League ?
>>>>>
>>>>> Strictly speaking performance patches are a no-go for stable, although
>>>>> we had exceptions in the past.
>>>>> I will pick this up, but for future do provide numbers which indicate
>>>>> the severity of the issue.
>>>>
>>>> It will help only if Rocket League is fixed to use GL_MAP_READ_BIT. It
>>>> doesn't fix the current release of Rocket League.
>>>
>>> That's incorrect, it always used GL_MAP_READ_BIT. So this fix should
>>> (and reportedly does) help with unpatched Rocket League.
>>>
>>> As can be seen from https://bugs.freedesktop.org/show_bug.cgi?id=97879
>>> (which should have been referenced by the commit log :), the problem is
>>> freezes of up to several seconds, which makes the game essentially
>>> unplayable, especially for online multiplayer.
>>>
>>> OTOH the game itself has now been fixed to no longer run into the
>>> problem, and I suspect most users will probably get the game update
>>> before any future Mesa stable release.
>>>
>> I'm concerned about the reports that although this(?) commit makes the
>> stalls shorter, it also decreases performance (do to ~80%).
>>
>> Fabio (Oibaf) is fairly responsive so getting the extra patch in his
>> PPA should be trivial. I'd imagine that others, say padoka (Paulo),
>> would also gladly assist.
> 
> The lower performance might be due to the game using GL_MAP_READ_BIT
> even when the flag isn't necessary.

Yep, from the apitrace in the bug report it looks like it sets
GL_MAP_READ_BIT for most if not all glMapBuffer calls. Seems unlikely
that it actually reads from all mappings.


Also, it sounds like even if the framerate may be lower, it's still
actually playable now, whereas it wasn't before.


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the mesa-dev mailing list