Message ID | 1460973164-26480-1-git-send-email-gabriel.feceoru@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Apr 18, 2016 at 12:52:44PM +0300, Gabriel Feceoru wrote: > Currently, when trying to run i-g-t tests with piglit, it takes up > to 20s until the first test is executed. > The main reason is that gem_concurrent_all has ~500k subtests, > overkilling piglit. > > This patch separates gem_concurrent_* tests from the rest of the tests, > creating two files test-list.txt and test-list-full.txt. > The piglit can now enumerate the i-g-t tests within a decent few seconds. > The second list could be used when trying to execute specific these tests. > > Signed-off-by: Gabriel Feceoru <gabriel.feceoru@intel.com> Imo just shuffle gem_concurrent_all into the EXTRA binaries target. With 500k tests it's way past the "just a few regression tests" phase fully into "full blown stress test suite that takes centuries to run". With that change: Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> So feel free to ask Marius to push right away. -Daniel > --- > tests/Makefile.am | 6 ++++++ > tests/Makefile.sources | 22 ++++++++++++++++++++-- > 2 files changed, 26 insertions(+), 2 deletions(-) > > diff --git a/tests/Makefile.am b/tests/Makefile.am > index 771e9ee..185962b 100644 > --- a/tests/Makefile.am > +++ b/tests/Makefile.am > @@ -14,6 +14,12 @@ test-list.txt: Makefile.sources > @echo ${single_kernel_tests} ${multi_kernel_tests} >> $@ > @echo END TESTLIST >> $@ > > +test-list-full.txt: Makefile.sources > + @echo TESTLIST > $@ > + @echo ${single_kernel_tests} ${multi_kernel_tests} ${extra_multi_kernel_tests} >> $@ > + @echo END TESTLIST >> $@ > + > + > noinst_PROGRAMS = \ > $(HANG) \ > $(TESTS_testsuite) \ > diff --git a/tests/Makefile.sources b/tests/Makefile.sources > index c52be2c..ca72243 100644 > --- a/tests/Makefile.sources > +++ b/tests/Makefile.sources > @@ -20,8 +20,6 @@ TESTS_progs_M = \ > gem_busy \ > gem_caching \ > gem_close_race \ > - gem_concurrent_blit \ > - gem_concurrent_all \ > gem_create \ > gem_cs_tlb \ > gem_ctx_param_basic \ > @@ -117,6 +115,11 @@ TESTS_progs_M = \ > template \ > $(NULL) > > +TESTS_progs_XM = \ > + gem_concurrent_blit \ > + gem_concurrent_all \ > + $(NULL) > + > TESTS_progs = \ > core_auth \ > core_getclient \ > @@ -219,6 +222,15 @@ multi_kernel_tests = \ > $(TESTS_scripts_M) \ > $(NULL) > > + > +# This target contains testcases with lots of subtests. > +# It was split from multi_kernel_tests because of the overhead of listing all > +# the subtests in piglit > +extra_multi_kernel_tests = \ > + $(TESTS_progs_XM) \ > + $(NULL) > + > + > # This target is for simple testcase which don't expose any subtest. > # > # Your testcase should probably use igt_simple_main, but none of the other magic > @@ -233,6 +245,12 @@ kernel_tests = \ > $(multi_kernel_tests) \ > $(NULL) > > +kernel_tests_full = \ > + $(single_kernel_tests) \ > + $(multi_kernel_tests) \ > + $(extra_multi_kernel_tests) \ > + $(NULL) > + > # Test that exercise specific asserts in the test framework library and are > # hence expected to fail. > XFAIL_TESTS = \ > -- > 1.9.1 >
diff --git a/tests/Makefile.am b/tests/Makefile.am index 771e9ee..185962b 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -14,6 +14,12 @@ test-list.txt: Makefile.sources @echo ${single_kernel_tests} ${multi_kernel_tests} >> $@ @echo END TESTLIST >> $@ +test-list-full.txt: Makefile.sources + @echo TESTLIST > $@ + @echo ${single_kernel_tests} ${multi_kernel_tests} ${extra_multi_kernel_tests} >> $@ + @echo END TESTLIST >> $@ + + noinst_PROGRAMS = \ $(HANG) \ $(TESTS_testsuite) \ diff --git a/tests/Makefile.sources b/tests/Makefile.sources index c52be2c..ca72243 100644 --- a/tests/Makefile.sources +++ b/tests/Makefile.sources @@ -20,8 +20,6 @@ TESTS_progs_M = \ gem_busy \ gem_caching \ gem_close_race \ - gem_concurrent_blit \ - gem_concurrent_all \ gem_create \ gem_cs_tlb \ gem_ctx_param_basic \ @@ -117,6 +115,11 @@ TESTS_progs_M = \ template \ $(NULL) +TESTS_progs_XM = \ + gem_concurrent_blit \ + gem_concurrent_all \ + $(NULL) + TESTS_progs = \ core_auth \ core_getclient \ @@ -219,6 +222,15 @@ multi_kernel_tests = \ $(TESTS_scripts_M) \ $(NULL) + +# This target contains testcases with lots of subtests. +# It was split from multi_kernel_tests because of the overhead of listing all +# the subtests in piglit +extra_multi_kernel_tests = \ + $(TESTS_progs_XM) \ + $(NULL) + + # This target is for simple testcase which don't expose any subtest. # # Your testcase should probably use igt_simple_main, but none of the other magic @@ -233,6 +245,12 @@ kernel_tests = \ $(multi_kernel_tests) \ $(NULL) +kernel_tests_full = \ + $(single_kernel_tests) \ + $(multi_kernel_tests) \ + $(extra_multi_kernel_tests) \ + $(NULL) + # Test that exercise specific asserts in the test framework library and are # hence expected to fail. XFAIL_TESTS = \
Currently, when trying to run i-g-t tests with piglit, it takes up to 20s until the first test is executed. The main reason is that gem_concurrent_all has ~500k subtests, overkilling piglit. This patch separates gem_concurrent_* tests from the rest of the tests, creating two files test-list.txt and test-list-full.txt. The piglit can now enumerate the i-g-t tests within a decent few seconds. The second list could be used when trying to execute specific these tests. Signed-off-by: Gabriel Feceoru <gabriel.feceoru@intel.com> --- tests/Makefile.am | 6 ++++++ tests/Makefile.sources | 22 ++++++++++++++++++++-- 2 files changed, 26 insertions(+), 2 deletions(-)