[Mesa-dev] [PATCH 0/8] Implement GL_KHR_flush_control

Ian Romanick idr at freedesktop.org
Thu Oct 16 08:46:53 PDT 2014


Patches 1, 2, and 8 are

Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

I sent out comments that affect the other five in the series.  The
comment on patch 3 affects patches 3, 4, and, trivially, 7.

On 10/01/2014 12:00 PM, Neil Roberts wrote:
> Here's a series of patches to implement GL_KHR_flush_control and
> GLX_ARB_flush_control. The idea of the extension is quite simple and
> just makes it so that the GL doesn't implicitly flush the context when
> the context is unbound. This should be a speed improvement for
> applications that are using multiple contexts and have to switch
> between them often.
> 
> The actual work of the extension is just to stop calling _mesa_flush
> in _mesa_make_current when the attribute is specified. However the
> patch is a bit more fiddly because it involves a new attribute for
> glXCreateContextAttribs which needs modifications on quite a few
> layers.
> 
> Sadly the X server needs patching as well because the server side of
> GLX seems to verify the attributes passed to glXCreateContextAttribs
> as well even for direct contexts. I'll post the patches for the X
> server and glproto shortly.
> 
> I've written an example of using the extension here:
> 
> https://github.com/bpeel/multi-context-test
> 
> The example renders a grid of rectangles to three different windows
> with three different contexts. The rendering of each frame of each
> window is interleaved so that the context is switched after every row
> of rectangles. If I set the release behaviour to flush then the FPS is
> 80 FPS whereas if I set it to none then it is 192 FPS. Hopefully that
> should be convincing enough that I haven't missed some flush
> somewhere.
> 
> There is already a Piglit test proposed by Fredrik Höglund which I
> think would be enough to test the extension if we can fix it up a bit.
> 
> http://lists.freedesktop.org/archives/piglit/2014-August/012271.html
> 
> I've run the patch series against all of the existing Piglit tests on
> Ivybridge and there are no regressions.
> 
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> 



More information about the mesa-dev mailing list