[Mesa-dev] [PATCH] radv: detect command buffers that do no work and drop them

Dave Airlie airlied at gmail.com
Fri Feb 10 10:47:53 UTC 2017


On 10 February 2017 at 15:29, Jason Ekstrand <jason at jlekstrand.net> wrote:
> On Feb 9, 2017 8:25 PM, "Dave Airlie" <airlied at gmail.com> wrote:
>
> From: Dave Airlie <airlied at redhat.com>
>
> If a buffer is just full of flushes we flush things on command
> buffer submission, so don't bother submitting these.
>
> This will reduce some CPU overhead on dota2, which submits a fair
> few command streams that don't end up drawing anything.
>
>
> I wrote basically the same patch for our driver earlier this year when I was
> preparing for our GDC Dota 2 demo.  I noticed an improvement at the time but
> I'm pretty sure it was just because of the stalls we had due to relocations.
> Now that those stalls are gone, I'm not convinced it would do much.  Did you
> actually measure a performance improvement or was this just a little CPU
> usage reduction?

No it looks like just a CPU usage reduction, since radeon had a bit of kernel
overhead on each command buffer, reducing the total number can reduce the
overhead. Though mostly the overhead is when submit a lot of buffers with the
command buffer, which none of these do.

But I'm not against reducing CPU overhead in any form, the less we use
the better!

Dave.


More information about the mesa-dev mailing list