[Piglit] Waffle and piglit-dispatch plans
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
Size: 197 bytes
Desc: not available
More information about the Piglit