[Piglit] Waffle and piglit-dispatch plans

Eric Anholt eric at anholt.net
Wed May 30 15:32:56 PDT 2012


On Wed, 30 May 2012 09:44:42 -0700, Kenneth Graunke <kenneth at whitecape.org> wrote:
> On 05/30/2012 07:51 AM, Pauli Nieminen wrote:
> > On Tue, May 29, 2012 at 03:10:53PM -0700, Kenneth Graunke wrote:
> >> On 05/29/2012 01:47 PM, Pauli Nieminen wrote:
> >>> Wouldn't that makes it simpler to have same tests set in all
> >>> platforms and GL flavors? Tests automatically skip when given
> >>> environment doesn't match what test requires. Fork-exec-skip should be
> >>> fast enough not to affect total runtime much.
> >>
> >> It actually does take a while.  Running all the 3.0+/1.30+ tests on
> >> pre-Sandybridge skips quite a few tests already...and more all the time.
> >>
> > 
> > Right. I forgot skiping requires setting up GL context that takes
> > quite some time.
> > 
> >> Plus, we'd eventually like to include FBConfigs/visuals in the list of
> >> requirements (i.e. RGBA, at least N bits of depth, stencil), and that
> >> will create a -lot- of combinations.
> >>
> >> The idea is to improve the runner infrastructure to select reasonable
> >> combinations of tests rather than always running them all.
> > 
> > That would actually make single test runner binary that is optionally
> > controlled using stdin to run multiple tests would complete tests a
> > lot faster. 
> > 
> > Quickly looking  amsparsetest with kernelshark. Too bad userspace is
> > compiled with -fomit-framepointer so no userspace callchains
> > available.
> > 0ms     asmparsetest starts
> >         First hald of this 6ms goes with frequent syscalls (shared
> >         library loading?) while second half has relatively few
> >         mprotect calls (Resolve symbols?).
> > 5.9ms   connect to Xorg
> >         Lots of round trips to X
> > 8.3ms   connection established (up to DRI2Connect?)
> > 9.1ms   Looks like here we have i965 driver loaded
> >         Userspace processing follows
> > 11.9ms  Some X communications (possible DRI2Authenenticate)
> >         Mostly userspace processing but a few files opened too
> > 16.8ms  Create window
> > 16.9ms  MakeCurrent (DRI2GetBuffers blocking X for 0.6ms because WM
> >         comunication)
> > 19.4ms  Test skips after noticing required extension is missing (from
> >         shader source).
> > 
> > Most of that time is either shared library loading (maybe 7ms) and
> > context and window setup (maybe 10ms).
> 
> Cool!  I've never seen a breakdown of the time like this.  That is a
> fair amount of overhead...

Interesting.  I wonder how much we could shave off of this by avoiding
some round trips.  I note that dri2CreateScreen round trips on
DRI2Connect after a round trip on earler in dri2CreateDisplay's
DRI2QueryVersion().  You might be able to fold those using xcb.

The big win here sounds like removing the X window in the -fbo case with
GLX_ARB_create_context and a GL 3.0 context, since you can now set None
as the drawable.  That should cut a ton of round trips.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/piglit/attachments/20120530/59c1cb45/attachment.pgp>


More information about the Piglit mailing list