On Thu, Nov 05, 2015 at 02:16:38PM -0800, [email protected] wrote: > From: Dylan Baker <[email protected]> > > One of the problems with piglit is the runtime, especially on older > platforms where large numbers of tests skip. The average runtime on HSW > for a shader_runner test that skips is about .05 seconds. This seems > pretty small, until one considers that there are ~3000 skipping shader > tests, and that number will only grow as more feature are added to > piglit. > > This patch implements a Mixin class for Test derived classes that > implements skipping based on OpenGL and OpenGL ES extensions, version, > and shader language version. It relies on wflinfo for this information, > but will fall back if wflinfo isn't available. > > This mixin is provided to ShaderTest and GLSLParserTest, which already > have this information readily available to them (or can easily gather > it), and improves their run time on all platforms substantially. > > On g965, this reduced piglit runtime for gpu.py by roughly 25%, using > '-c' with two cores. > > Patches 1-2: My global options series which has been on the list, > I'll likely merge that soon unless there are objections > Patch 3: Fixes a bug in one of the test generators > > The remaining patches implement the fast skipping feature. > > The design of this mixin is conservative. I would prefer to run a few > tests that could be skipped, but never skip one that could be run than > the opposite. > > It might also be worth having (though it is no way required) my patch to > update glslparser to know about GLES 3.1 and GLES 3.2, since without it > one test (at least for me) will go from fail to skip. >
There is probably one more thing that deserves to be added here. Ilia had mentioned filter before run time on IRC. There is a lot of merit to this approach, since it could lower runtime more. The problem with this approach is two-fold. First, there isn't a good way to put these results into the output results. Second, it interferes with plans that we have to "compile" the all.py and friends into a plain text file at compile time. Dylan
signature.asc
Description: PGP signature
_______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
