Message ID | 20200415085246.7945-2-roger.pau@citrix.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [OSSTEST,1/2] exanime: test for SMT and add a host flag | expand |
Roger Pau Monne writes ("[PATCH OSSTEST 2/2] make-flight: add a core scheduling job"): > Run a simple core scheduling tests on a host that has SMT support. > This is only enabled for Xen >= 4.13. ... > + # Core-scheduling tests are x86 only > + if [ x$test_coresched = xy -a $xenarch = amd64 ]; then > + job_create_test test-$xenarch$kern-coresched-$dom0arch-xl \ > + test-debian xl $xenarch $dom0arch $debian_runvars \ > + all_hostflags=$most_hostflags,smt \ > + xen_boot_append='sched-gran=core' > + > + fi This seems fine as far as it goes, but all it does is check that things still work if sched-gran=core is passed. I'm not sure whether anything more sophisticated is needed, and in any case this is a step in the right direction, so: Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> (subject to my comment on 1/ about the flag name.) Ian.
On Wed, 2020-04-15 at 14:06 +0100, Ian Jackson wrote: > Roger Pau Monne writes ("[PATCH OSSTEST 2/2] make-flight: add a core > scheduling job"): > > Run a simple core scheduling tests on a host that has SMT support. > > This is only enabled for Xen >= 4.13. > ... > > + # Core-scheduling tests are x86 only > > + if [ x$test_coresched = xy -a $xenarch = amd64 ]; then > > + job_create_test test-$xenarch$kern-coresched-$dom0arch-xl \ > > + test-debian xl $xenarch $dom0arch > > $debian_runvars \ > > + all_hostflags=$most_hostflags,smt \ > > + xen_boot_append='sched-gran=core' > > + > > + fi > > This seems fine as far as it goes, but all it does is check that > things still work if sched-gran=core is passed. > Yep, and that's enough for enabling and starting using ore-scheduling. So, doing like this, core-scheduling should get the same amount and kind of testing that scheduling in general gets. > I'm not sure whether > anything more sophisticated is needed, and in any case this is a step > in the right direction, so: > Indeed. One question, as my OSSTest-fu is a bit rusty... does this create "sched-gran=core" tests for all the schedulers? Or just one of them for th default scheduler? Thanks and Regards
On Thu, Apr 16, 2020 at 06:28:33PM +0200, Dario Faggioli wrote: > On Wed, 2020-04-15 at 14:06 +0100, Ian Jackson wrote: > > Roger Pau Monne writes ("[PATCH OSSTEST 2/2] make-flight: add a core > > scheduling job"): > > > Run a simple core scheduling tests on a host that has SMT support. > > > This is only enabled for Xen >= 4.13. > > ... > > > + # Core-scheduling tests are x86 only > > > + if [ x$test_coresched = xy -a $xenarch = amd64 ]; then > > > + job_create_test test-$xenarch$kern-coresched-$dom0arch-xl \ > > > + test-debian xl $xenarch $dom0arch > > > $debian_runvars \ > > > + all_hostflags=$most_hostflags,smt \ > > > + xen_boot_append='sched-gran=core' > > > + > > > + fi > > > > This seems fine as far as it goes, but all it does is check that > > things still work if sched-gran=core is passed. > > > Yep, and that's enough for enabling and starting using ore-scheduling. > So, doing like this, core-scheduling should get the same amount and > kind of testing that scheduling in general gets. Well, we run a lot more tests without 'sched-gran=core', but I don't think it's feasible to duplicate the matrix to run all tests with and without core-scheduling. > > I'm not sure whether > > anything more sophisticated is needed, and in any case this is a step > > in the right direction, so: > > > Indeed. > > One question, as my OSSTest-fu is a bit rusty... does this create > "sched-gran=core" tests for all the schedulers? Or just one of them for > th default scheduler? Just for the default scheduler ATM, we can expand this if required. The test also is very simple, as it just creates a Debian PV guest and does some basic life cycle operations, it's exactly like the job below but with 'sched-gran=core': http://logs.test-lab.xenproject.org/osstest/logs/149667/test-amd64-amd64-xl/info.html Roger.
On Thu, 2020-04-16 at 18:36 +0200, Roger Pau Monné wrote: > On Thu, Apr 16, 2020 at 06:28:33PM +0200, Dario Faggioli wrote: > > On Wed, 2020-04-15 at 14:06 +0100, Ian Jackson wrote: > > > > > > This seems fine as far as it goes, but all it does is check that > > > things still work if sched-gran=core is passed. > > > > > Yep, and that's enough for enabling and starting using ore- > > scheduling. > > So, doing like this, core-scheduling should get the same amount and > > kind of testing that scheduling in general gets. > > Well, we run a lot more tests without 'sched-gran=core', but I don't > think it's feasible to duplicate the matrix to run all tests with and > without core-scheduling. > Sure, but again, that's the kind of scheduling testing that we do. E.g., right now that Credit2 is the default scheduler, we still test the other schedulers, exactly with "just" a job like this (AFAICR, at least). It indeed would be good to have something more specific, not only for core-scheduling, but for scheduling in general. But it's not there right now... That was the point. :-) Of course the default setup (which, currently, has "sched-gran=cpu") is stressed much more, because all the other jobs also use it, but indeed it does not appear sensible to replicate the matrix for each job that we have with a non-default configuration. > > One question, as my OSSTest-fu is a bit rusty... does this create > > "sched-gran=core" tests for all the schedulers? Or just one of them > > for > > th default scheduler? > > Just for the default scheduler ATM, we can expand this if required. > Ok, sure. Maybe it would make sense to add just another one for Credit, sooner rather than later, as I guess there may be people wanting to continue use Credit, but they may want to try it with core-scheduling. Of course, this can be done on top of this patch... I was just thinking out loud here. :-) Thanks and Regards
Roger Pau Monne writes ("Re: [PATCH OSSTEST 2/2] make-flight: add a core scheduling job"): > On Thu, Apr 16, 2020 at 06:28:33PM +0200, Dario Faggioli wrote: > > Yep, and that's enough for enabling and starting using ore-scheduling. > > So, doing like this, core-scheduling should get the same amount and > > kind of testing that scheduling in general gets. > > Well, we run a lot more tests without 'sched-gran=core', but I don't > think it's feasible to duplicate the matrix to run all tests with and > without core-scheduling. Yes, I agree with Roger. > > One question, as my OSSTest-fu is a bit rusty... does this create > > "sched-gran=core" tests for all the schedulers? Or just one of them for > > th default scheduler? > > Just for the default scheduler ATM, we can expand this if required. > The test also is very simple, as it just creates a Debian PV guest > and does some basic life cycle operations, it's exactly like the job > below but with 'sched-gran=core': > > http://logs.test-lab.xenproject.org/osstest/logs/149667/test-amd64-amd64-xl/info.html Right. Thanks, Ian.
Dario Faggioli writes ("Re: [PATCH OSSTEST 2/2] make-flight: add a core scheduling job"): > Ok, sure. Maybe it would make sense to add just another one for Credit, > sooner rather than later, as I guess there may be people wanting to > continue use Credit, but they may want to try it with core-scheduling. Maybe in return we could delete the rtds test which has been marked nonblocking forever and which no-one seems to be fixing ? :-) Patches welcome... Ian.
diff --git a/make-flight b/make-flight index 2f445d95..e656125e 100755 --- a/make-flight +++ b/make-flight @@ -763,6 +763,17 @@ test_matrix_do_one () { *) test_dom0pvh=n ;; esac + # core scheduling tests for versions >= 4.13 only + case "$xenbranch" in + xen-3.*-testing) test_coresched=n ;; + xen-4.?-testing) test_coresched=n ;; + xen-4.10-testing) test_coresched=n ;; + xen-4.11-testing) test_coresched=n ;; + xen-4.12-testing) test_coresched=n ;; + *) test_coresched=y ;; + esac + + # xend PV guest test on x86 only if [ x$test_xend = xy -a \( $dom0arch = "i386" -o $dom0arch = "amd64" \) ]; then job_create_test test-$xenarch$kern-$dom0arch-pv test-debian xend \ @@ -894,6 +905,15 @@ test_matrix_do_one () { fi + # Core-scheduling tests are x86 only + if [ x$test_coresched = xy -a $xenarch = amd64 ]; then + job_create_test test-$xenarch$kern-coresched-$dom0arch-xl \ + test-debian xl $xenarch $dom0arch $debian_runvars \ + all_hostflags=$most_hostflags,smt \ + xen_boot_append='sched-gran=core' + + fi + #do_passthrough_tests do_pygrub_tests
Run a simple core scheduling tests on a host that has SMT support. This is only enabled for Xen >= 4.13. The runvar difference is: +test-amd64-coresched-amd64-xl all_host_di_version 2020-02-10 +test-amd64-coresched-i386-xl all_host_di_version 2020-02-10 +test-amd64-coresched-amd64-xl all_host_suite stretch +test-amd64-coresched-i386-xl all_host_suite stretch +test-amd64-coresched-amd64-xl all_hostflags arch-amd64,arch-xen-amd64,suite-stretch,purpose-test,smt +test-amd64-coresched-i386-xl all_hostflags arch-i386,arch-xen-amd64,suite-stretch,purpose-test,smt +test-amd64-coresched-amd64-xl arch amd64 +test-amd64-coresched-i386-xl arch i386 +test-amd64-coresched-amd64-xl buildjob build-amd64 +test-amd64-coresched-i386-xl buildjob build-i386 +test-amd64-coresched-amd64-xl debian_arch amd64 +test-amd64-coresched-i386-xl debian_arch i386 +test-amd64-coresched-amd64-xl debian_kernkind pvops +test-amd64-coresched-i386-xl debian_kernkind pvops +test-amd64-coresched-amd64-xl debian_suite stretch +test-amd64-coresched-i386-xl debian_suite stretch +test-amd64-coresched-amd64-xl kernbuildjob build-amd64-pvops +test-amd64-coresched-i386-xl kernbuildjob build-i386-pvops +test-amd64-coresched-amd64-xl kernkind pvops +test-amd64-coresched-i386-xl kernkind pvops +test-amd64-coresched-amd64-xl toolstack xl +test-amd64-coresched-i386-xl toolstack xl +test-amd64-coresched-amd64-xl xen_boot_append sched-gran=core +test-amd64-coresched-i386-xl xen_boot_append sched-gran=core +test-amd64-coresched-amd64-xl xenbuildjob build-amd64 +test-amd64-coresched-i386-xl xenbuildjob build-amd64 Signed-off-by: Roger Pau Monné <roger.pau@citrix.com> --- make-flight | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)