On Wed, Apr 3, 2019 at 9:57 AM Ilia Mirkin <imir...@alum.mit.edu> wrote:

> On Wed, Apr 3, 2019 at 9:36 AM Marek Olšák <mar...@gmail.com> wrote:
> >
> > On Wed, Apr 3, 2019 at 9:06 AM Ilia Mirkin <imir...@alum.mit.edu> wrote:
> >>
> >> On Wed, Apr 3, 2019 at 8:38 AM Marek Olšák <mar...@gmail.com> wrote:
> >> >
> >> > On Tue, Apr 2, 2019 at 2:14 PM Eric Anholt <e...@anholt.net> wrote:
> >> >>
> >> >> Ilia Mirkin <imir...@alum.mit.edu> writes:
> >> >>
> >> >> > Shouldn't this sort of decision be left up to the driver? If the
> >> >> > driver would like to use CS for blits, fine, but why not let it
> blit
> >> >> > in the most optimal way possible and force it to use a compute
> shader?
> >> >>
> >> >> Yeah, commit messages require an explanation of why a change is being
> >> >> made.
> >> >
> >> >
> >> > We plan to create vaapi contexts with PIPE_CONTEXT_COMPUTE_ONLY for
> better GPU multitasking.
> >> >
> >> > RadeonSI uses async compute queues if PIPE_CONTEXT_COMPUTE_ONLY is
> set, so it can't do any graphics stuff, not even blit. (pipe_context::blit
> is NULL)
> >>
> >> Makes sense. Sounds like one of those would be a better condition than
> >> the mere existence of compute support then?
> >
> >
> > Or we can add PIPE_CAP_PREFER_COMPUTE_BLIT as a performance hint.
>
> When would a driver set that, and when would a state tracker respect it?
>
> As I see it, if the driver prefers compute blits, it can just do that
> in its ->blit impl. If the state tracker created a
> PIPE_CONTEXT_COMPUTE_ONLY context, then it can also decide to not use
> ->blit(). I don't see what the CAP adds, but perhaps I'm missing
> something.
>

util_compute_blit was only validated for vaapi. Using it in the driver is
risky. PIPE_CAP_PREFER_COMPUTE_BLIT would be the hint for vaapi.

Marek
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to