[Intel-gfx] [PATCH] drm/i915: Make sample_c messages go faster on Haswell.

Kenneth Graunke kenneth at whitecape.org
Mon Jan 5 23:03:31 PST 2015


On Tuesday, January 06, 2015 02:39:36 PM Xiang, Haihao wrote:
> On Mon, 2015-01-05 at 21:54 -0800, Kenneth Graunke wrote:
> > On Tuesday, January 06, 2015 01:11:53 PM Xiang, Haihao wrote:
> > > 
> > > Hi Kenneth,
> > > 
> > > How did you test OSD ? I can't reproduce the issue you mentioned, OSD
> > > works well for me when using mplayer-vaapi with the latest
> > > libva/libva-intel-driver master branch.
> > > 
> > > I tried your patch, what surprised me is OSD still works well after
> > > applying your patch. It seems your patch didn't disable the palette.
> > > 
> > > Thanks
> > > Haihao
> > 
> > I ran:
> > 
> > mplayer -osdlevel 3 -vo vaapi big_buck_bunny_720p_stereo.ogg
> > 
> > For me, the OSD text is solid green, with hard edges.
> 
> The OSD text is white for me when using mplayer -osdlevel 3 -vo vaapi
> xxx. If possible, could you update your mplayer ?

Huh.  I'm using the Arch Linux package of mplayer-vaapi 36265-13,
which seems to be the most recent subversion commit ID.  I've never seen
white text on my Haswell system - it seems to be consistently dark green.

> > If you use "-vo gl" or "-vo xv", the OSD is solid white text with a black
> > border around it.  I presume that it's supposed to be white with vaapi as
> > well, but I guess I'm not entirely sure.
> > 
> > It's possible that the optimization doesn't affect the palette as long as
> > you never use sample_c with the paletted textures.
> 
> I verified the palette takes effect in the following way:
> 
> 1. Only support P8A8 format in the driver
> 
> 2. ran the above command and I saw white OSD text
> 
> 3. Only support P4A4 format in the driver and don't use
> 3DSTATE_SAMPLER_PALETTE_LOAD0 to load the value to the texture palette,
> so the palette keeps unchanged. 
> 
> 4. ran the above command and I saw black OSD text.
> 
> 5. Load the right value to the texture palette and ran the above command
> again, I saw white OSD text.
> 
> Hence I think sample_c with the paletted textures is used in the driver.

That sounds like the palette is actually working, then.  Great :)

I doubt that libva would use sample_c - sampling with a shadow comparison?
It looks like it just uses sample and sample+killpix.

I'm pretty sure the sample_c optimization just uses the palette memory as
storage for some stuff, so it's quite possible it just works if you're
only using sample and sample+killpix.

--Ken
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20150105/bcc7bb26/attachment.sig>


More information about the Intel-gfx mailing list