Re: [gem5-dev] nightly regressions
Here's the changeset Andreas was referring to: http://repo.gem5.org/gem5?cmd=changeset;node=b2720503a978 On Tue, Apr 4, 2017 at 9:20 AM, Gabe Blackwrote: > I can't add reviewers due to a known issue, but here is the stack of CLs > which fix the regressions: > > https://gem5-review.googlesource.com/#/c/2641/ > > Gabe > > On Tue, Apr 4, 2017 at 3:35 AM, Gabe Black wrote: > > > Oh, also, the problem with EIO I think is not because there are EIO > > regressions, it's that the EIO code is being added in with EXTRAS and > > breaking the build for certain targets. Excluding it would be fairly > > trivial if I had write permission for the regression script on zizzer. > > > > Gabe > > > > On Tue, Apr 4, 2017 at 3:32 AM, Gabe Black wrote: > > > >> Yeah, there are a lot of problems with the current system. It has three > >> real functions: > >> > >> 1. Making sure things run from end to end without crashing. > >> 2. Checking for inadvertent changes to the stats. > >> 3. Checking for non-determinstic behavior. > >> > >> Unfortunately it takes a really long time to run, doesn't distinguish > >> between trivial and non-trivial divergence in behavior, is really hard > to > >> merge, doesn't tell you what's not working if something is broken, has > >> dependencies with major complications, isn't very useful when people > >> diverge from upstream, etc. > >> > >> I think there is definitely a role for that sort of test since those are > >> meaningful, but then there are lots and lots of potential testing that > >> we're not doing. We should have the few unit tests that already exist > all > >> either pass or fail, not just output something, and then make them > >> easy/automatic to run, and we should have more of them. There are vast > >> swathes of functionality that really should be tested with unit tests > like: > >> > >> 1. The CPU models. > >> 2. All the instructions for all the ISAs. > >> 3. All the Device models. > >> etc. etc. > >> > >> The amount of work it would/will take to cover the gap in testing is > >> enormous, but in my opinion that's the technical debt that has to be > paid > >> down to straighten things out. > >> > >> Gabe > >> > >> On Tue, Apr 4, 2017 at 2:55 AM, Andreas Sandberg < > >> andreas.sandb...@arm.com> wrote: > >> > >>> On 01/04/2017 12:27, Gabe Black wrote: > >>> > Hi folks. I'm working through the nightly regressions to get them to a > good > point for a rebase of our internal branch of gem5, and I've noticed a > few > things: > > 1. The stats have been changed but not updated a bunch of times. I've > identified almost all the points this has happened since the > references > were last updated, and have patches which fix them. Some stat changes > are a > little fishy, but I'll at least identify the guilty change(s) so that > their > authors can look them over. > > >>> > >>> This is really hard to get right with the current system of "push to > >>> submit". I would really like to avoid including stat updates in normal > >>> code submissions. It would make it really hard to automatically submit > >>> code (there would be stat conflicts for every single non-trivial > change) > >>> and it'd make cherry-picking really annoying. > >>> > >>> Ideally, the CI system should compare the stat output after applying a > >>> CL to the previous stat update. That way, you can easily spot the > >>> difference when submitting new code. > >>> > >>> 2. The SPARC FS regression were just plain not running because its > configuration had been broken. I'll have a patch to fix this. > 3. The nightly regressions are still checking gem5 out from mercurial. > > >>> > >>> We should obviously fix this. However, the repo is kept in sync with > the > >>> golden git repo using a cron, so it's not quite as bad as it seems. > >>> > >>> 4. The "encumbered" repository has, as far as I can tell, not be > converted > from mercurial to git. Probably this isn't a problem because this code > is > mostly unchanging and becoming less relevant over time, especially > since > EIO support was removed from the process classes (it was, right?). > 5. The EIO code is also broken, because it tries to call "fatal" with > a > "(void)" cast in front of it in a ternary operation. Something like > "foo ? > (void)fatal("a bad thing happened") : (void)fatal("a different bad > thing > happened")". What "fatal" expands to now is apparently not compatible > with > this usage. Since I can access the encumbered repository, I can > attempt > to > fix this. > I can (and in at least in some cases will) fix most of these issues, > except > maybe 4 if we still want encumbered to exist. Please speak up if I've > misinterpreted something or am missing some important bit of context. > [1]
Re: [gem5-dev] nightly regressions
I can't add reviewers due to a known issue, but here is the stack of CLs which fix the regressions: https://gem5-review.googlesource.com/#/c/2641/ Gabe On Tue, Apr 4, 2017 at 3:35 AM, Gabe Blackwrote: > Oh, also, the problem with EIO I think is not because there are EIO > regressions, it's that the EIO code is being added in with EXTRAS and > breaking the build for certain targets. Excluding it would be fairly > trivial if I had write permission for the regression script on zizzer. > > Gabe > > On Tue, Apr 4, 2017 at 3:32 AM, Gabe Black wrote: > >> Yeah, there are a lot of problems with the current system. It has three >> real functions: >> >> 1. Making sure things run from end to end without crashing. >> 2. Checking for inadvertent changes to the stats. >> 3. Checking for non-determinstic behavior. >> >> Unfortunately it takes a really long time to run, doesn't distinguish >> between trivial and non-trivial divergence in behavior, is really hard to >> merge, doesn't tell you what's not working if something is broken, has >> dependencies with major complications, isn't very useful when people >> diverge from upstream, etc. >> >> I think there is definitely a role for that sort of test since those are >> meaningful, but then there are lots and lots of potential testing that >> we're not doing. We should have the few unit tests that already exist all >> either pass or fail, not just output something, and then make them >> easy/automatic to run, and we should have more of them. There are vast >> swathes of functionality that really should be tested with unit tests like: >> >> 1. The CPU models. >> 2. All the instructions for all the ISAs. >> 3. All the Device models. >> etc. etc. >> >> The amount of work it would/will take to cover the gap in testing is >> enormous, but in my opinion that's the technical debt that has to be paid >> down to straighten things out. >> >> Gabe >> >> On Tue, Apr 4, 2017 at 2:55 AM, Andreas Sandberg < >> andreas.sandb...@arm.com> wrote: >> >>> On 01/04/2017 12:27, Gabe Black wrote: >>> Hi folks. I'm working through the nightly regressions to get them to a good point for a rebase of our internal branch of gem5, and I've noticed a few things: 1. The stats have been changed but not updated a bunch of times. I've identified almost all the points this has happened since the references were last updated, and have patches which fix them. Some stat changes are a little fishy, but I'll at least identify the guilty change(s) so that their authors can look them over. >>> >>> This is really hard to get right with the current system of "push to >>> submit". I would really like to avoid including stat updates in normal >>> code submissions. It would make it really hard to automatically submit >>> code (there would be stat conflicts for every single non-trivial change) >>> and it'd make cherry-picking really annoying. >>> >>> Ideally, the CI system should compare the stat output after applying a >>> CL to the previous stat update. That way, you can easily spot the >>> difference when submitting new code. >>> >>> 2. The SPARC FS regression were just plain not running because its configuration had been broken. I'll have a patch to fix this. 3. The nightly regressions are still checking gem5 out from mercurial. >>> >>> We should obviously fix this. However, the repo is kept in sync with the >>> golden git repo using a cron, so it's not quite as bad as it seems. >>> >>> 4. The "encumbered" repository has, as far as I can tell, not be converted from mercurial to git. Probably this isn't a problem because this code is mostly unchanging and becoming less relevant over time, especially since EIO support was removed from the process classes (it was, right?). 5. The EIO code is also broken, because it tries to call "fatal" with a "(void)" cast in front of it in a ternary operation. Something like "foo ? (void)fatal("a bad thing happened") : (void)fatal("a different bad thing happened")". What "fatal" expands to now is apparently not compatible with this usage. Since I can access the encumbered repository, I can attempt to fix this. I can (and in at least in some cases will) fix most of these issues, except maybe 4 if we still want encumbered to exist. Please speak up if I've misinterpreted something or am missing some important bit of context. [1] https://www.mail-archive.com/gem5-dev@gem5.org/msg19438.html >>> >>> As far as I know, the encumbered/EIO repo has been deprecated. There was >>> a discussion about deprecating old and broken ISAs a while back [1], >>> that resulted in removing EIO as a way to reduce the test overhead. >>> Steve sent out an email, which no one replied to, asking for EIO users >>> [2] shortly after the discussion. I think he disabled EIO tests
[gem5-dev] Change in public/gem5[master]: stats: Update 04.gpu stats.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2654 Change subject: stats: Update 04.gpu stats. .. stats: Update 04.gpu stats. A new stat was added by the CL: commit b043dcf58ad766582aeab162fb855cc3fc95f2cf Author: Andreas SandbergDate: Mon Feb 27 13:17:51 2017 + gpu-compute: Fix Python/C++ object hierarchy discrepancies Change-Id: I665a7eb0bea19f379c5fbaaf4686fcbe8c008159 --- M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simerr M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt 4 files changed, 2,942 insertions(+), 2,942 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2654 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I665a7eb0bea19f379c5fbaaf4686fcbe8c008159 Gerrit-Change-Number: 2654 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Update the stats for 04.gpu for x86/linux/gpu-ruby-GP...
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2649 Change subject: stats: Update the stats for 04.gpu for x86/linux/gpu-ruby-GPU_Rf0. .. stats: Update the stats for 04.gpu for x86/linux/gpu-ruby-GPU_Rf0. These stats were changed by this CL: commit a4b546c3a139aeb33f087422637ac06fc4477d11 Author: Matthew PorembaDate: Thu Jan 19 11:58:59 2017 -0500 ruby: Add occupancy stats to MessageBuffers Change-Id: I9713ed44d94cba424cdfa92d746dfe8007583b40 --- M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout M tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt 3 files changed, 164 insertions(+), 12 deletions(-) diff --git a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini index 28bcdeb..2cb0689 100644 --- a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini +++ b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/config.ini @@ -420,7 +420,7 @@ errout=cerr euid=100 eventq_index=0 -executable=/dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello +executable=/usr/local/google/home/gabeblack/gem5/dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello gid=100 input=cin kvmInSE=false @@ -1154,7 +1154,7 @@ [system.cpu2.cl_driver] type=ClDriver -codefile=/dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello-kernel.asm +codefile=/usr/local/google/home/gabeblack/gem5/dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello-kernel.asm eventq_index=0 filename=hsa diff --git a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout index 6eab10f..23cce98 100755 --- a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout +++ b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/simout @@ -3,12 +3,12 @@ gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. -gem5 compiled Nov 29 2016 19:21:01 -gem5 started Nov 29 2016 19:21:23 -gem5 executing on zizzer, pid 11568 -command line: /z/powerjg/gem5-upstream/build/HSAIL_X86/gem5.opt -d build/HSAIL_X86/tests/opt/quick/se/04.gpu/x86/linux/gpu-ruby-GPU_RfO -re /z/powerjg/gem5-upstream/tests/testing/../run.py quick/se/04.gpu/x86/linux/gpu-ruby-GPU_RfO +gem5 compiled Mar 28 2017 14:30:03 +gem5 started Mar 28 2017 14:30:19 +gem5 executing on gabeblack-desktop.mtv.corp.google.com, pid 43422 +command line: /usr/local/google/home/gabeblack/gem5/gem5-public/build/HSAIL_X86/gem5.opt -d build/HSAIL_X86/tests/opt/quick/se/04.gpu/x86/linux/gpu-ruby-GPU_RfO -re /usr/local/google/home/gabeblack/gem5/gem5-public/tests/testing/../run.py quick/se/04.gpu/x86/linux/gpu-ruby-GPU_RfO -Using GPU kernel code file(s) /dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello-kernel.asm +Using GPU kernel code file(s) /usr/local/google/home/gabeblack/gem5/dist/m5/regression/test-progs/gpu-hello/bin/x86/linux/gpu-hello-kernel.asm Global frequency set at 1 ticks per second Forcing maxCoalescedReqs to 32 (TLB assoc.) Forcing maxCoalescedReqs to 32 (TLB assoc.) diff --git a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt index a879beb..f718d58 100644 --- a/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt +++ b/tests/quick/se/04.gpu/ref/x86/linux/gpu-ruby-GPU_RfO/stats.txt @@ -4,11 +4,11 @@ sim_ticks 667407500 # Number of ticks simulated final_tick 667407500 # Number of ticks from beginning of simulation (restored from checkpoints and never reset) sim_freq 1 # Frequency of simulated ticks -host_inst_rate 72185 # Simulator instruction rate (inst/s) -host_op_rate 148440 # Simulator op (including micro ops) rate (op/s) -host_tick_rate 719412350 # Simulator tick rate (ticks/s) -host_mem_usage 1308600 # Number of bytes of host memory used -host_seconds 0.93 # Real time elapsed on the host +host_inst_rate 176952 # Simulator instruction rate (inst/s) +host_op_rate 363878 # Simulator op (including micro ops) rate (op/s) +host_tick_rate 1763538835
[gem5-dev] Change in public/gem5[master]: stats: Update some stats after simulated program exit behavi...
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2656 Change subject: stats: Update some stats after simulated program exit behavior was changed. .. stats: Update some stats after simulated program exit behavior was changed. The following CL delayed program exit and changed the stats for many if not most of the SE mode regressions. commit 2c1286865fc2542a0586ca4ff40b00765d17b348 Author: Brandon PotterDate: Wed Mar 1 14:52:23 2017 -0600 syscall-emul: Rewrite system call exit code Change-Id: Id241f2b7d5374947597c715ee44febe1acc5ea16 --- M tests/long/se/10.mcf/ref/arm/linux/o3-timing/config.ini M tests/long/se/10.mcf/ref/arm/linux/o3-timing/simerr M tests/long/se/10.mcf/ref/arm/linux/o3-timing/simout M tests/long/se/10.mcf/ref/arm/linux/o3-timing/stats.txt M tests/long/se/10.mcf/ref/sparc/linux/simple-timing/config.ini M tests/long/se/10.mcf/ref/sparc/linux/simple-timing/simerr M tests/long/se/10.mcf/ref/sparc/linux/simple-timing/simout M tests/long/se/10.mcf/ref/sparc/linux/simple-timing/stats.txt M tests/long/se/10.mcf/ref/x86/linux/o3-timing/config.ini M tests/long/se/10.mcf/ref/x86/linux/o3-timing/simerr M tests/long/se/10.mcf/ref/x86/linux/o3-timing/simout M tests/long/se/10.mcf/ref/x86/linux/o3-timing/stats.txt M tests/long/se/10.mcf/ref/x86/linux/simple-timing/config.ini M tests/long/se/10.mcf/ref/x86/linux/simple-timing/simerr M tests/long/se/10.mcf/ref/x86/linux/simple-timing/simout M tests/long/se/10.mcf/ref/x86/linux/simple-timing/stats.txt M tests/long/se/20.parser/ref/arm/linux/o3-timing/config.ini M tests/long/se/20.parser/ref/arm/linux/o3-timing/simerr M tests/long/se/20.parser/ref/arm/linux/o3-timing/simout M tests/long/se/20.parser/ref/arm/linux/o3-timing/stats.txt M tests/long/se/20.parser/ref/arm/linux/simple-atomic/config.ini M tests/long/se/20.parser/ref/arm/linux/simple-atomic/simerr M tests/long/se/20.parser/ref/arm/linux/simple-atomic/simout M tests/long/se/20.parser/ref/arm/linux/simple-atomic/stats.txt M tests/long/se/20.parser/ref/arm/linux/simple-timing/config.ini M tests/long/se/20.parser/ref/arm/linux/simple-timing/simerr M tests/long/se/20.parser/ref/arm/linux/simple-timing/simout M tests/long/se/20.parser/ref/arm/linux/simple-timing/stats.txt M tests/long/se/20.parser/ref/x86/linux/o3-timing/config.ini M tests/long/se/20.parser/ref/x86/linux/o3-timing/simerr M tests/long/se/20.parser/ref/x86/linux/o3-timing/simout M tests/long/se/20.parser/ref/x86/linux/o3-timing/stats.txt M tests/long/se/20.parser/ref/x86/linux/simple-atomic/config.ini M tests/long/se/20.parser/ref/x86/linux/simple-atomic/simerr M tests/long/se/20.parser/ref/x86/linux/simple-atomic/simout M tests/long/se/20.parser/ref/x86/linux/simple-atomic/stats.txt M tests/long/se/20.parser/ref/x86/linux/simple-timing/config.ini M tests/long/se/20.parser/ref/x86/linux/simple-timing/simerr M tests/long/se/20.parser/ref/x86/linux/simple-timing/simout M tests/long/se/20.parser/ref/x86/linux/simple-timing/stats.txt M tests/long/se/30.eon/ref/arm/linux/o3-timing/config.ini M tests/long/se/30.eon/ref/arm/linux/o3-timing/simerr M tests/long/se/30.eon/ref/arm/linux/o3-timing/simout M tests/long/se/30.eon/ref/arm/linux/o3-timing/stats.txt M tests/long/se/30.eon/ref/arm/linux/simple-atomic/config.ini M tests/long/se/30.eon/ref/arm/linux/simple-atomic/simerr M tests/long/se/30.eon/ref/arm/linux/simple-atomic/simout M tests/long/se/30.eon/ref/arm/linux/simple-atomic/stats.txt M tests/long/se/30.eon/ref/arm/linux/simple-timing/config.ini M tests/long/se/30.eon/ref/arm/linux/simple-timing/simerr M tests/long/se/30.eon/ref/arm/linux/simple-timing/simout M tests/long/se/30.eon/ref/arm/linux/simple-timing/stats.txt M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/config.ini M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/simout M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/stats.txt M tests/long/se/40.perlbmk/ref/arm/linux/simple-atomic/config.ini M tests/long/se/40.perlbmk/ref/arm/linux/simple-atomic/simerr M tests/long/se/40.perlbmk/ref/arm/linux/simple-atomic/simout M tests/long/se/40.perlbmk/ref/arm/linux/simple-atomic/stats.txt M tests/long/se/40.perlbmk/ref/arm/linux/simple-timing/config.ini M tests/long/se/40.perlbmk/ref/arm/linux/simple-timing/simerr M tests/long/se/40.perlbmk/ref/arm/linux/simple-timing/simout M tests/long/se/40.perlbmk/ref/arm/linux/simple-timing/stats.txt M tests/long/se/50.vortex/ref/arm/linux/o3-timing/config.ini M tests/long/se/50.vortex/ref/arm/linux/o3-timing/simerr M tests/long/se/50.vortex/ref/arm/linux/o3-timing/simout M tests/long/se/50.vortex/ref/arm/linux/o3-timing/stats.txt M tests/long/se/60.bzip2/ref/arm/linux/o3-timing/config.ini M tests/long/se/60.bzip2/ref/arm/linux/o3-timing/simerr M tests/long/se/60.bzip2/ref/arm/linux/o3-timing/simout M tests/long/se/60.bzip2/ref/arm/linux/o3-timing/stats.txt M
[gem5-dev] Change in public/gem5[master]: stats: Update the 40.m5threads stats.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2652 Change subject: stats: Update the 40.m5threads stats. .. stats: Update the 40.m5threads stats. The change below changed the stats for the o3 version of the 40.m5threads regression. commit 2367198921765848a4f5b3d020a7cc5776209f80 Author: Brandon PotterDate: Mon Feb 27 14:10:15 2017 -0500 syscall_emul: [PATCH 15/22] add clone/execve for threading and multiprocess simulations Change-Id: I601c58d8d1453cf93f2065ea5816b63b553610e0 --- M tests/quick/se/40.m5threads-test-atomic/ref/sparc/linux/o3-timing-mp/config.ini M tests/quick/se/40.m5threads-test-atomic/ref/sparc/linux/o3-timing-mp/simerr M tests/quick/se/40.m5threads-test-atomic/ref/sparc/linux/o3-timing-mp/simout M tests/quick/se/40.m5threads-test-atomic/ref/sparc/linux/o3-timing-mp/stats.txt 4 files changed, 2,988 insertions(+), 2,980 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2652 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I601c58d8d1453cf93f2065ea5816b63b553610e0 Gerrit-Change-Number: 2652 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Update the solaris boot stats for the new op classes.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2648 Change subject: stats: Update the solaris boot stats for the new op classes. .. stats: Update the solaris boot stats for the new op classes. The change below introduced some new op classes which have their own stats, and the counts the instructions used to be under have gone down. commit 6c72c3551978ef2eabbe9727bf24fd2fcf385318 Author: Fernando EndoDate: Sat Oct 15 14:58:45 2016 -0500 cpu, arm: Distinguish Float* and SimdFloat*, create FloatMem* opClass Change-Id: Ifa3a279493f503585a7b2cbb2785b106e24184bb --- M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt 4 files changed, 47 insertions(+), 31 deletions(-) diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini index e473f5b..ed41ed4 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini @@ -28,7 +28,7 @@ load_addr_mask=1099511627775 load_offset=0 mem_mode=atomic -mem_ranges=1048576:68157439 2147483648:2415919103 +mem_ranges=1048576:68157439:0:0:0:0 2147483648:2415919103:0:0:0:0 memories=system.hypervisor_desc system.nvram system.partition_desc system.physmem0 system.physmem1 system.rom mmap_using_noreserve=false multi_thread=false @@ -71,7 +71,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -ranges=133412421632:133412421639 134217728000:554050781183 644245094400:652835028991 725849473024:1095485095935 1099255955456:1099255955463 +ranges=133412421632:133412421639:0:0:0:0 134217728000:554050781183:0:0:0:0 644245094400:652835028991:0:0:0:0 725849473024:1095485095935:0:0:0:0 1099255955456:1099255955463:0:0:0:0 req_size=16 resp_size=16 master=system.iobus.slave[0] @@ -204,6 +204,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -211,7 +212,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=133446500352:133446508543 +range=133446500352:133446508543:0:0:0:0 port=system.membus.master[5] [system.intrctrl] @@ -297,6 +298,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -304,7 +306,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=133429198848:133429207039 +range=133429198848:133429207039:0:0:0:0 port=system.membus.master[4] [system.partition_desc] @@ -315,6 +317,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -322,7 +325,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=133445976064:133445984255 +range=133445976064:133445984255:0:0:0:0 port=system.membus.master[6] [system.physmem0] @@ -333,6 +336,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -340,7 +344,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=1048576:68157439 +range=1048576:68157439:0:0:0:0 port=system.membus.master[7] [system.physmem1] @@ -351,6 +355,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -358,7 +363,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=2147483648:2415919103 +range=2147483648:2415919103:0:0:0:0 port=system.membus.master[8] [system.rom] @@ -369,6 +374,7 @@ default_p_state=UNDEFINED eventq_index=0 in_addr_map=true +kvm_map=true latency=60 latency_var=0 null=false @@ -376,7 +382,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 power_model=Null -range=1099243192320:1099251580927 +range=1099243192320:1099251580927:0:0:0:0 port=system.membus.master[3] [system.t1000] diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json index 940cdb0..913ebaa 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json @@ -6,13 +6,14 @@ "mmap_using_noreserve": false, "kernel_addr_check": true, "rom": { -"range": "1099243192320:1099251580927", +
[gem5-dev] Change in public/gem5[master]: config: Add a default system disk image for SPARC FS.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2645 Change subject: config: Add a default system disk image for SPARC FS. .. config: Add a default system disk image for SPARC FS. When the change below removed the hard coded disk name for the SPARC FS configuration, it broke the regression which had not specified a disk name. This change adds a default disk name so that the regression will continue to work like it used to, but preserving the effect of this other change. commit 86a25bbcee88f6e69299867b6264885d738f636e Author: Jakub JermarDate: Tue Jul 19 09:52:46 2016 -0500 config: Allow SPARC FS image to be specified on the command line Change-Id: Ieb317b2bf573a4f2fc435d34cccd1f246c28d84c --- M configs/common/Benchmarks.py 1 file changed, 2 insertions(+), 0 deletions(-) diff --git a/configs/common/Benchmarks.py b/configs/common/Benchmarks.py index bf0a2ad..dec1e3e 100644 --- a/configs/common/Benchmarks.py +++ b/configs/common/Benchmarks.py @@ -60,6 +60,8 @@ return env.get('LINUX_IMAGE', disk('x86root.img')) elif buildEnv['TARGET_ISA'] == 'arm': return env.get('LINUX_IMAGE', disk('linux-aarch32-ael.img')) +elif buildEnv['TARGET_ISA'] == 'sparc': +return env.get('LINUX_IMAGE', disk('disk.s10hw2')) else: print "Don't know what default disk image to use for %s ISA" % \ buildEnv['TARGET_ISA'] -- To view, visit https://gem5-review.googlesource.com/2645 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ieb317b2bf573a4f2fc435d34cccd1f246c28d84c Gerrit-Change-Number: 2645 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Update ARM FS stats.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2653 Change subject: stats: Update ARM FS stats. .. stats: Update ARM FS stats. The change below changed the behavior of interrupts on ARM and changed the stats for the 10.linux-boot regression. commit 746e2f3c27ad83c36b7bc3b8bd3c92004fcf995b Author: Sudhanshu JhaDate: Mon Feb 27 10:29:56 2017 + arm, kmi: Clear interrupts in KMI devices Change-Id: Ie1cfc26777f6ed2d3fd4340175941fda1fdb5b6a --- M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor-dual/config.ini M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor-dual/simerr M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor-dual/simout M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor-dual/stats.txt M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor/config.ini M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor/simerr M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor/simout M tests/long/fs/10.linux-boot/ref/arm/linux/realview-minor/stats.txt M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3-dual/config.ini M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3-dual/simerr M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3-dual/simout M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3-dual/stats.txt M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3-dual/system.terminal M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3/config.ini M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3/simerr M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3/simout M tests/long/fs/10.linux-boot/ref/arm/linux/realview-o3/stats.txt M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing-dual/config.ini M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing-dual/simerr M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing-dual/simout M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing-dual/stats.txt M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing/config.ini M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing/simerr M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing/simout M tests/quick/fs/10.linux-boot/ref/arm/linux/realview-simple-timing/stats.txt 25 files changed, 15,657 insertions(+), 15,490 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2653 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ie1cfc26777f6ed2d3fd4340175941fda1fdb5b6a Gerrit-Change-Number: 2653 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Update SPARC solaris boot stats.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2644 Change subject: stats: Update SPARC solaris boot stats. .. stats: Update SPARC solaris boot stats. The CPU power state bins where changed by the following CL: commit fb5fc11da49938660ea22c336964677cdba890e1 Author: David Guillen FandosDate: Mon Jun 6 17:16:43 2016 +0100 pwr: Low-power idle power state for idle CPUs Change-Id: I8b3924681c8a85b7bbe061b671faf274ce882f91 --- M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simerr M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simerr b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simerr index 2807da6..7e4b384 100755 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simerr +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simerr @@ -36,4 +36,5 @@ 0.145519 rounded to 0 warn: Sockets disabled, not accepting terminal connections warn: Sockets disabled, not accepting gdb connections +warn: ClockedObject: More than one power state change request encountered within the same simulation tick warn: Don't know what interrupt to clear for console. diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout index 1b486a6..a8b9bd2 100755 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout @@ -3,9 +3,9 @@ gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. -gem5 compiled Apr 4 2017 01:06:08 -gem5 started Apr 4 2017 01:06:18 -gem5 executing on gabeblack-desktop.mtv.corp.google.com, pid 98195 +gem5 compiled Apr 4 2017 01:51:46 +gem5 started Apr 4 2017 01:51:57 +gem5 executing on gabeblack-desktop.mtv.corp.google.com, pid 121003 command line: /usr/local/google/home/gabeblack/gem5/gem5-public/build/SPARC/gem5.opt -d build/SPARC/tests/opt/long/fs/80.solaris-boot/sparc/solaris/t1000-simple-atomic -re /usr/local/google/home/gabeblack/gem5/gem5-public/tests/testing/../run.py long/fs/80.solaris-boot/sparc/solaris/t1000-simple-atomic Global frequency set at 20 ticks per second diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt index a382e7a..9861ba8 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt @@ -4,11 +4,11 @@ sim_ticks 4467555024 # Number of ticks simulated final_tick 4467555024 # Number of ticks from beginning of simulation (restored from checkpoints and never reset) sim_freq 20 # Frequency of simulated ticks -host_inst_rate 323 # Simulator instruction rate (inst/s) -host_op_rate 3290176 # Simulator op (including micro ops) rate (op/s) -host_tick_rate 6593981 # Simulator tick rate (ticks/s) +host_inst_rate 3232456 # Simulator instruction rate (inst/s) +host_op_rate 3233727 # Simulator op (including micro ops) rate (op/s) +host_tick_rate 6480848 # Simulator tick rate (ticks/s) host_mem_usage 550344 # Number of bytes of host memory used -host_seconds 677.52 # Real time elapsed on the host +host_seconds 689.35 # Real time elapsed on the host sim_insts 2228284650 # Number of instructions simulated sim_ops 2229160714 # Number of ops (including micro ops) simulated system.voltage_domain.voltage 1 # Voltage in Volts @@ -116,7 +116,7 @@ system.pwrStateResidencyTicks::UNDEFINED 4467555024
[gem5-dev] Change in public/gem5[master]: stats: Update the solaris boot stats for the default snoop_f...
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2647 Change subject: stats: Update the solaris boot stats for the default snoop_filter. .. stats: Update the solaris boot stats for the default snoop_filter. The snoop_filter was enabled by default by this change: commit 080d4e08d627b5b726afec71d38370373b7376c5 Author: Andreas HanssonDate: Fri Aug 12 14:11:45 2016 +0100 mem: Add snoop filter to SystemXBar by default Change-Id: I850473c70437588b47812f1dc00d6ecdb66daa36 --- M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt 4 files changed, 38 insertions(+), 16 deletions(-) diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini index fa3a6c4..e473f5b 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini @@ -238,7 +238,7 @@ [system.membus] type=CoherentXBar -children=badaddr_responder +children=badaddr_responder snoop_filter clk_domain=system.clk_domain default_p_state=UNDEFINED eventq_index=0 @@ -250,7 +250,7 @@ point_of_coherency=true power_model=Null response_latency=2 -snoop_filter=Null +snoop_filter=system.membus.snoop_filter snoop_response_latency=4 system=system use_default_range=false @@ -282,6 +282,13 @@ warn_access= pio=system.membus.default +[system.membus.snoop_filter] +type=SnoopFilter +eventq_index=0 +lookup_latency=1 +max_capacity=8388608 +system=system + [system.nvram] type=SimpleMemory bandwidth=0.00 diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json index d3a1b4f..940cdb0 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json @@ -721,7 +721,16 @@ "role": "SLAVE" }, "p_state_clk_gate_min": 2, -"snoop_filter": null, +"snoop_filter": { +"name": "snoop_filter", +"system": "system", +"max_capacity": 8388608, +"eventq_index": 0, +"cxx_class": "SnoopFilter", +"path": "system.membus.snoop_filter", +"type": "SnoopFilter", +"lookup_latency": 1 +}, "power_model": null, "path": "system.membus", "snoop_response_latency": 4, diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout index 3247e07..8347db8 100755 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout @@ -3,9 +3,9 @@ gem5 Simulator System. http://gem5.org gem5 is copyrighted software; use the --copyright option for details. -gem5 compiled Apr 4 2017 02:11:37 -gem5 started Apr 4 2017 02:11:47 -gem5 executing on gabeblack-desktop.mtv.corp.google.com, pid 135111 +gem5 compiled Apr 4 2017 02:30:37 +gem5 started Apr 4 2017 02:30:47 +gem5 executing on gabeblack-desktop.mtv.corp.google.com, pid 2108 command line: /usr/local/google/home/gabeblack/gem5/gem5-public/build/SPARC/gem5.opt -d build/SPARC/tests/opt/long/fs/80.solaris-boot/sparc/solaris/t1000-simple-atomic -re /usr/local/google/home/gabeblack/gem5/gem5-public/tests/testing/../run.py long/fs/80.solaris-boot/sparc/solaris/t1000-simple-atomic Global frequency set at 20 ticks per second diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt index 3106af3..e3f3402 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt @@ -4,11 +4,11 @@ sim_ticks 4467555024 # Number of ticks simulated final_tick 4467555024 # Number of ticks from beginning of simulation (restored from checkpoints and never reset) sim_freq 20 # Frequency of
[gem5-dev] Change in public/gem5[master]: stats: Update 01.hello-2T-smt and 40.perlbmks stats on ARM/A...
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2650 Change subject: stats: Update 01.hello-2T-smt and 40.perlbmks stats on ARM/Alpha o3-timing. .. stats: Update 01.hello-2T-smt and 40.perlbmks stats on ARM/Alpha o3-timing. The following change removed a write to an integer register when completing a system call. This changed the reference statistics slightly. commit 073cb266079edddec64ea8cd5169dd2cbef8f812 Author: Brandon PotterDate: Mon Feb 27 14:10:02 2017 -0500 syscall_emul: [patch 14/22] adds identifier system calls Change-Id: I3bee42ab826dd9cbc49aab34340da57caf4f045d --- M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/config.ini M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/simerr M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/simout M tests/long/se/40.perlbmk/ref/arm/linux/o3-timing/stats.txt M tests/quick/se/01.hello-2T-smt/ref/alpha/linux/o3-timing-mt/config.ini M tests/quick/se/01.hello-2T-smt/ref/alpha/linux/o3-timing-mt/simerr M tests/quick/se/01.hello-2T-smt/ref/alpha/linux/o3-timing-mt/simout M tests/quick/se/01.hello-2T-smt/ref/alpha/linux/o3-timing-mt/stats.txt 8 files changed, 2,545 insertions(+), 2,504 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2650 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I3bee42ab826dd9cbc49aab34340da57caf4f045d Gerrit-Change-Number: 2650 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Update the solaris boot stats for new snoopTraffic stat.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2646 Change subject: stats: Update the solaris boot stats for new snoopTraffic stat. .. stats: Update the solaris boot stats for new snoopTraffic stat. The following change added the new stat: commit 0020662459fdd9efcfe9864ef12160515434ccdb Author: David Guillen FandosDate: Thu Jul 21 17:19:14 2016 +0100 mem: Add snoop traffic statistic Change-Id: I9ee0fb4b8cc97c6b94e76ab5524f89c78c97d1a6 --- M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.json M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/simout M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt 4 files changed, 67 insertions(+), 8 deletions(-) diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini index 8fe2ef1..fa3a6c4 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/config.ini @@ -44,6 +44,7 @@ partition_desc=system.partition_desc partition_desc_addr=133445976064 partition_desc_bin=/usr/local/google/home/gabeblack/gem5/dist/m5/system/binaries/1up-md.bin +power_model=Null readfile=/usr/local/google/home/gabeblack/gem5/gem5-public/tests/testing/../halt.sh reset_addr=1099243192320 reset_bin=/usr/local/google/home/gabeblack/gem5/dist/m5/system/binaries/reset_new.bin @@ -69,6 +70,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null ranges=133412421632:133412421639 134217728000:554050781183 644245094400:652835028991 725849473024:1095485095935 1099255955456:1099255955463 req_size=16 resp_size=16 @@ -110,6 +112,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null profile=0 progress_interval=0 simpoint_start_insts= @@ -166,6 +169,7 @@ p_state_clk_gate_min=2 pio_addr=134217728000 pio_latency=200 +power_model=Null system=system pio=system.iobus.master[14] @@ -206,6 +210,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=133446500352:133446508543 port=system.membus.master[5] @@ -224,6 +229,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null response_latency=2 use_default_range=false width=16 @@ -242,6 +248,7 @@ p_state_clk_gate_max=20 p_state_clk_gate_min=2 point_of_coherency=true +power_model=Null response_latency=2 snoop_filter=Null snoop_response_latency=4 @@ -264,6 +271,7 @@ pio_addr=0 pio_latency=200 pio_size=8 +power_model=Null ret_bad_addr=true ret_data16=65535 ret_data32=4294967295 @@ -288,6 +296,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=133429198848:133429207039 port=system.membus.master[4] @@ -305,6 +314,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=133445976064:133445984255 port=system.membus.master[6] @@ -322,6 +332,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=1048576:68157439 port=system.membus.master[7] @@ -339,6 +350,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=2147483648:2415919103 port=system.membus.master[8] @@ -356,6 +368,7 @@ p_state_clk_gate_bins=20 p_state_clk_gate_max=20 p_state_clk_gate_min=2 +power_model=Null range=1099243192320:1099251580927 port=system.membus.master[3] @@ -378,6 +391,7 @@ pio_addr=644245094400 pio_latency=200 pio_size=4294967296 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -400,6 +414,7 @@ pio_addr=549755813888 pio_latency=200 pio_size=4294967296 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -422,6 +437,7 @@ pio_addr=725849473024 pio_latency=200 pio_size=8 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -444,6 +460,7 @@ pio_addr=725849473088 pio_latency=200 pio_size=8 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -466,6 +483,7 @@ pio_addr=725849473152 pio_latency=200 pio_size=8 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -488,6 +506,7 @@ pio_addr=725849473216 pio_latency=200 pio_size=8 +power_model=Null ret_bad_addr=false ret_data16=65535 ret_data32=4294967295 @@ -510,6 +529,7 @@ pio_addr=734439407616 pio_latency=200 pio_size=8
[gem5-dev] Change in public/gem5[master]: stats: Update the stats for 70.twolf for x86 o3-timing mode.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2655 Change subject: stats: Update the stats for 70.twolf for x86 o3-timing mode. .. stats: Update the stats for 70.twolf for x86 o3-timing mode. The following CL changed the stats: commit 43418e7f81099072fb7d56dae0ae1d858162 Author: Brandon PotterDate: Wed Mar 1 13:07:43 2017 -0600 syscall-emul: Move memState into its own file It would be a good idea to try to figure out why, since it doesn't *look* like this change was intended to move things around in memory or otherwise change simulated behavior. Change-Id: I0173ffdfb680a91b8c91f2bf5d7f72c76e7a8b63 --- M tests/long/se/70.twolf/ref/x86/linux/o3-timing/config.ini M tests/long/se/70.twolf/ref/x86/linux/o3-timing/simerr M tests/long/se/70.twolf/ref/x86/linux/o3-timing/simout M tests/long/se/70.twolf/ref/x86/linux/o3-timing/stats.txt 4 files changed, 1,126 insertions(+), 10,848 deletions(-) -- To view, visit https://gem5-review.googlesource.com/2655 To unsubscribe, visit https://gem5-review.googlesource.com/settings Gerrit-Project: public/gem5 Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I0173ffdfb680a91b8c91f2bf5d7f72c76e7a8b63 Gerrit-Change-Number: 2655 Gerrit-PatchSet: 1 Gerrit-Owner: Gabe Black ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: stats: Un-empty the SPARC FS stats.txt file.
Gabe Black has uploaded this change for review. ( https://gem5-review.googlesource.com/2641 Change subject: stats: Un-empty the SPARC FS stats.txt file. .. stats: Un-empty the SPARC FS stats.txt file. This was emptied accidentally by the CL below. A lot of other files were too, but those were eventually refilled. commit 62b6ff22ec1f90014b1d0fc778014bdb38cc09ce Author: Curtis DunhamDate: Tue May 31 11:07:18 2016 +0100 stats: update for snoop filter tweak Change-Id: I34aefca51a92a6a98f6a8fdbdab7106cc1fff171 --- M tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt 1 file changed, 251 insertions(+), 0 deletions(-) diff --git a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt index e69de29..e3be24d 100644 --- a/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt +++ b/tests/long/fs/80.solaris-boot/ref/sparc/solaris/t1000-simple-atomic/stats.txt @@ -0,0 +1,251 @@ + +-- Begin Simulation Statistics -- +sim_seconds 2.233778 # Number of seconds simulated +sim_ticks 4467555024 # Number of ticks simulated +final_tick 4467555024 # Number of ticks from beginning of simulation (restored from checkpoints and never reset) +sim_freq 20 # Frequency of simulated ticks +host_inst_rate 1658224 # Simulator instruction rate (inst/s) +host_op_rate 1658876 # Simulator op (including micro ops) rate (op/s) +host_tick_rate 3324623 # Simulator tick rate (ticks/s) +host_mem_usage 518260 # Number of bytes of host memory used +host_seconds 1343.78 # Real time elapsed on the host +sim_insts 2228284650 # Number of instructions simulated +sim_ops 2229160714 # Number of ops (including micro ops) simulated +system.voltage_domain.voltage 1 # Voltage in Volts +system.clk_domain.clock 2 # Clock period in ticks +system.hypervisor_desc.bytes_read::cpu.data 16792 # Number of bytes read from this memory +system.hypervisor_desc.bytes_read::total 16792 # Number of bytes read from this memory +system.hypervisor_desc.num_reads::cpu.data 9024 # Number of read requests responded to by this memory +system.hypervisor_desc.num_reads::total 9024 # Number of read requests responded to by this memory +system.hypervisor_desc.bw_read::cpu.data 7517 # Total read bandwidth from this memory (bytes/s) +system.hypervisor_desc.bw_read::total 7517 # Total read bandwidth from this memory (bytes/s) +system.hypervisor_desc.bw_total::cpu.data 7517 # Total bandwidth to/from this memory (bytes/s) +system.hypervisor_desc.bw_total::total 7517 # Total bandwidth to/from this memory (bytes/s) +system.nvram.bytes_read::cpu.data 284 # Number of bytes read from this memory +system.nvram.bytes_read::total 284 # Number of bytes read from this memory +system.nvram.bytes_written::cpu.data 92 # Number of bytes written to this memory +system.nvram.bytes_written::total 92 # Number of bytes written to this memory +system.nvram.num_reads::cpu.data 284 # Number of read requests responded to by this memory +system.nvram.num_reads::total 284 # Number of read requests responded to by this memory +system.nvram.num_writes::cpu.data 92 # Number of write requests responded to by this memory +system.nvram.num_writes::total 92 # Number of write requests responded to by this memory +system.nvram.bw_read::cpu.data 127 # Total read bandwidth from this memory (bytes/s) +system.nvram.bw_read::total 127
Re: [gem5-dev] adding reviewers in gerrit?
Hi Jason, I don't know if you had a chance to look into this, but I just uploaded my first patch to gerrit and I also seem to be missing the ability to add reviewers. When I type someone into the reviewers box there is no auto complete and when I add someone manually and click OK, the reviewer field is still blank. Regards, Paul -Original Message- From: gem5-dev [mailto:gem5-dev-boun...@gem5.org] On Behalf Of Jason Lowe-Power Sent: Saturday, March 25, 2017 11:38 AM To: gem5 Developer ListSubject: Re: [gem5-dev] adding reviewers in gerrit? Hi Gabe, Hmm... It works for me. It's possible that we don't have the permissions set up correctly to allow anyone to add reviewers. I just tested with a non-admin account and it doesn't work for that account either. I'll look into it. Cheers, Jason On Sat, Mar 25, 2017 at 5:32 AM Gabe Black wrote: > Hi folks. I've uploaded a few CLs to gerrit now, and I notice that I > can't add reviewers since it claims everyone I try to add isn't a > registered user. That's very odd, because I'm trying to add people who > have given me review feedback on earlier changes, and people who I can > look up activity for on gerrit. Does anybody know why it's not > behaving for me? My other CL got reviewed so it's not a problem yet, > but it would be nice if I could direct my CLs to the appropriate people > instead of hoping they see them. > > Gabe > ___ > gem5-dev mailing list > gem5-dev@gem5.org > http://m5sim.org/mailman/listinfo/gem5-dev ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Change in public/gem5[master]: arm, sim: fix context switch stats dumps for ARM64/Linux
Paul Rosenfeld has uploaded this change for review. ( https://gem5-review.googlesource.com/2640 Change subject: arm,sim: fix context switch stats dumps for ARM64/Linux .. arm,sim: fix context switch stats dumps for ARM64/Linux 32bit and 64bit Linux have different arguments passed to the __switch_to() function that gem5 hooks into in order to collect context switch statistics. 64bit Linux provides the task_struct pointer to the next task that will be switched to, which means we don't have to look up the task_struct from thread_info as we do in 32bit ARM Linux. This patch adds a second set of accessors to ThreadInfo to extract details such as the pid, tgid, task name, etc., directly from a task_struct. The existing accessors maintain their existing behavior by first looking up the task_struct and then calling these new accessors. A 64-bit variant of the DumpStatsPCEvent class is added that uses these new accessors to get the task details for the context switch dumps directly from the task_struct passed to __switch_to(). Change-Id: I63c4b3e1ad64446751a91f6340901d5180d7382d --- M src/arch/arm/linux/system.cc M src/arch/arm/linux/system.hh M src/arch/generic/linux/threadinfo.hh 3 files changed, 116 insertions(+), 24 deletions(-) diff --git a/src/arch/arm/linux/system.cc b/src/arch/arm/linux/system.cc index 52e075d..7f06475 100644 --- a/src/arch/arm/linux/system.cc +++ b/src/arch/arm/linux/system.cc @@ -236,7 +236,14 @@ LinuxArmSystem::startup() { if (enableContextSwitchStatsDump) { -dumpStatsPCEvent = addKernelFuncEvent("__switch_to"); +if (!highestELIs64()) { +dumpStatsPCEvent = +addKernelFuncEvent("__switch_to"); +} else { +dumpStatsPCEvent = +addKernelFuncEvent("__switch_to"); +} + if (!dumpStatsPCEvent) panic("dumpStatsPCEvent not created!"); @@ -276,25 +283,64 @@ Linux::dumpDmesg(getThreadContext(0), std::cout); } -/** This function is called whenever the the kernel function - * "__switch_to" is called to change running tasks. +/** + * Extracts the information used by the DumpStatsPCEvent by reading the + * thread_info pointer passed to __switch_to() in 32 bit ARM Linux * * r0 = task_struct of the previously running process - * r1 = task_info of the previously running process - * r2 = task_info of the next process to run + * r1 = thread_info of the previously running process + * r2 = thread_info of the next process to run + */ +void +DumpStatsPCEvent::getTaskDetails(ThreadContext *tc, uint32_t , +uint32_t , std::string _task_str, int32_t ) { + +Linux::ThreadInfo ti(tc); +Addr task_descriptor = tc->readIntReg(2); +pid = ti.curTaskPID(task_descriptor); +tgid = ti.curTaskTGID(task_descriptor); +next_task_str = ti.curTaskName(task_descriptor); + +// Streamline treats pid == -1 as the kernel process. +// Also pid == 0 implies idle process (except during Linux boot) +mm = ti.curTaskMm(task_descriptor); +} + +/** + * Extracts the information used by the DumpStatsPCEvent64 by reading the + * task_struct pointer passed to __switch_to() in 64 bit ARM Linux + * + * r0 = task_struct of the previously running process + * r1 = task_struct of next process to run + */ +void +DumpStatsPCEvent64::getTaskDetails(ThreadContext *tc, uint32_t , +uint32_t , std::string _task_str, int32_t ) { + +Linux::ThreadInfo ti(tc); +Addr task_struct = tc->readIntReg(1); +pid = ti.curTaskPIDFromTaskStruct(task_struct); +tgid = ti.curTaskTGIDFromTaskStruct(task_struct); +next_task_str = ti.curTaskNameFromTaskStruct(task_struct); + +// Streamline treats pid == -1 as the kernel process. +// Also pid == 0 implies idle process (except during Linux boot) +mm = ti.curTaskMmFromTaskStruct(task_struct); +} + +/** This function is called whenever the the kernel function + * "__switch_to" is called to change running tasks. */ void DumpStatsPCEvent::process(ThreadContext *tc) { -Linux::ThreadInfo ti(tc); -Addr task_descriptor = tc->readIntReg(2); -uint32_t pid = ti.curTaskPID(task_descriptor); -uint32_t tgid = ti.curTaskTGID(task_descriptor); -std::string next_task_str = ti.curTaskName(task_descriptor); +uint32_t pid = 0; +uint32_t tgid = 0; +std::string next_task_str; +int32_t mm = 0; -// Streamline treats pid == -1 as the kernel process. -// Also pid == 0 implies idle process (except during Linux boot) -int32_t mm = ti.curTaskMm(task_descriptor); +getTaskDetails(tc, pid, tgid, next_task_str, mm); + bool is_kernel = (mm == 0); if (is_kernel && (pid != 0)) { pid = -1; diff --git a/src/arch/arm/linux/system.hh b/src/arch/arm/linux/system.hh index 709776f..247ebae 100644 --- a/src/arch/arm/linux/system.hh +++ b/src/arch/arm/linux/system.hh @@ -132,6 +132,20 @@ {} virtual void
Re: [gem5-dev] nightly regressions
Oh, also, the problem with EIO I think is not because there are EIO regressions, it's that the EIO code is being added in with EXTRAS and breaking the build for certain targets. Excluding it would be fairly trivial if I had write permission for the regression script on zizzer. Gabe On Tue, Apr 4, 2017 at 3:32 AM, Gabe Blackwrote: > Yeah, there are a lot of problems with the current system. It has three > real functions: > > 1. Making sure things run from end to end without crashing. > 2. Checking for inadvertent changes to the stats. > 3. Checking for non-determinstic behavior. > > Unfortunately it takes a really long time to run, doesn't distinguish > between trivial and non-trivial divergence in behavior, is really hard to > merge, doesn't tell you what's not working if something is broken, has > dependencies with major complications, isn't very useful when people > diverge from upstream, etc. > > I think there is definitely a role for that sort of test since those are > meaningful, but then there are lots and lots of potential testing that > we're not doing. We should have the few unit tests that already exist all > either pass or fail, not just output something, and then make them > easy/automatic to run, and we should have more of them. There are vast > swathes of functionality that really should be tested with unit tests like: > > 1. The CPU models. > 2. All the instructions for all the ISAs. > 3. All the Device models. > etc. etc. > > The amount of work it would/will take to cover the gap in testing is > enormous, but in my opinion that's the technical debt that has to be paid > down to straighten things out. > > Gabe > > On Tue, Apr 4, 2017 at 2:55 AM, Andreas Sandberg > wrote: > >> On 01/04/2017 12:27, Gabe Black wrote: >> >>> Hi folks. I'm working through the nightly regressions to get them to a >>> good >>> point for a rebase of our internal branch of gem5, and I've noticed a few >>> things: >>> >>> 1. The stats have been changed but not updated a bunch of times. I've >>> identified almost all the points this has happened since the references >>> were last updated, and have patches which fix them. Some stat changes >>> are a >>> little fishy, but I'll at least identify the guilty change(s) so that >>> their >>> authors can look them over. >>> >> >> This is really hard to get right with the current system of "push to >> submit". I would really like to avoid including stat updates in normal >> code submissions. It would make it really hard to automatically submit >> code (there would be stat conflicts for every single non-trivial change) >> and it'd make cherry-picking really annoying. >> >> Ideally, the CI system should compare the stat output after applying a >> CL to the previous stat update. That way, you can easily spot the >> difference when submitting new code. >> >> 2. The SPARC FS regression were just plain not running because its >>> configuration had been broken. I'll have a patch to fix this. >>> 3. The nightly regressions are still checking gem5 out from mercurial. >>> >> >> We should obviously fix this. However, the repo is kept in sync with the >> golden git repo using a cron, so it's not quite as bad as it seems. >> >> 4. The "encumbered" repository has, as far as I can tell, not be converted >>> from mercurial to git. Probably this isn't a problem because this code is >>> mostly unchanging and becoming less relevant over time, especially since >>> EIO support was removed from the process classes (it was, right?). >>> 5. The EIO code is also broken, because it tries to call "fatal" with a >>> "(void)" cast in front of it in a ternary operation. Something like "foo >>> ? >>> (void)fatal("a bad thing happened") : (void)fatal("a different bad thing >>> happened")". What "fatal" expands to now is apparently not compatible >>> with >>> this usage. Since I can access the encumbered repository, I can attempt >>> to >>> fix this. >>> I can (and in at least in some cases will) fix most of these issues, >>> except >>> maybe 4 if we still want encumbered to exist. Please speak up if I've >>> misinterpreted something or am missing some important bit of context. >>> [1] https://www.mail-archive.com/gem5-dev@gem5.org/msg19438.html >>> >> >> As far as I know, the encumbered/EIO repo has been deprecated. There was >> a discussion about deprecating old and broken ISAs a while back [1], >> that resulted in removing EIO as a way to reduce the test overhead. >> Steve sent out an email, which no one replied to, asking for EIO users >> [2] shortly after the discussion. I think he disabled EIO tests after >> that. >> >> We should probably think about what fixing means in this case. I have >> actively removed stat diffing from tests that I consider to be >> functional (e.g., atomic boot, CPU switching, checkpointing). >> >> I wouldn't mind disabling stat diffing altogether until we have figured >> out what to do for performance regressions. I'd
Re: [gem5-dev] nightly regressions
Yeah, there are a lot of problems with the current system. It has three real functions: 1. Making sure things run from end to end without crashing. 2. Checking for inadvertent changes to the stats. 3. Checking for non-determinstic behavior. Unfortunately it takes a really long time to run, doesn't distinguish between trivial and non-trivial divergence in behavior, is really hard to merge, doesn't tell you what's not working if something is broken, has dependencies with major complications, isn't very useful when people diverge from upstream, etc. I think there is definitely a role for that sort of test since those are meaningful, but then there are lots and lots of potential testing that we're not doing. We should have the few unit tests that already exist all either pass or fail, not just output something, and then make them easy/automatic to run, and we should have more of them. There are vast swathes of functionality that really should be tested with unit tests like: 1. The CPU models. 2. All the instructions for all the ISAs. 3. All the Device models. etc. etc. The amount of work it would/will take to cover the gap in testing is enormous, but in my opinion that's the technical debt that has to be paid down to straighten things out. Gabe On Tue, Apr 4, 2017 at 2:55 AM, Andreas Sandbergwrote: > On 01/04/2017 12:27, Gabe Black wrote: > >> Hi folks. I'm working through the nightly regressions to get them to a >> good >> point for a rebase of our internal branch of gem5, and I've noticed a few >> things: >> >> 1. The stats have been changed but not updated a bunch of times. I've >> identified almost all the points this has happened since the references >> were last updated, and have patches which fix them. Some stat changes are >> a >> little fishy, but I'll at least identify the guilty change(s) so that >> their >> authors can look them over. >> > > This is really hard to get right with the current system of "push to > submit". I would really like to avoid including stat updates in normal > code submissions. It would make it really hard to automatically submit > code (there would be stat conflicts for every single non-trivial change) > and it'd make cherry-picking really annoying. > > Ideally, the CI system should compare the stat output after applying a > CL to the previous stat update. That way, you can easily spot the > difference when submitting new code. > > 2. The SPARC FS regression were just plain not running because its >> configuration had been broken. I'll have a patch to fix this. >> 3. The nightly regressions are still checking gem5 out from mercurial. >> > > We should obviously fix this. However, the repo is kept in sync with the > golden git repo using a cron, so it's not quite as bad as it seems. > > 4. The "encumbered" repository has, as far as I can tell, not be converted >> from mercurial to git. Probably this isn't a problem because this code is >> mostly unchanging and becoming less relevant over time, especially since >> EIO support was removed from the process classes (it was, right?). >> 5. The EIO code is also broken, because it tries to call "fatal" with a >> "(void)" cast in front of it in a ternary operation. Something like "foo ? >> (void)fatal("a bad thing happened") : (void)fatal("a different bad thing >> happened")". What "fatal" expands to now is apparently not compatible with >> this usage. Since I can access the encumbered repository, I can attempt to >> fix this. >> I can (and in at least in some cases will) fix most of these issues, >> except >> maybe 4 if we still want encumbered to exist. Please speak up if I've >> misinterpreted something or am missing some important bit of context. >> [1] https://www.mail-archive.com/gem5-dev@gem5.org/msg19438.html >> > > As far as I know, the encumbered/EIO repo has been deprecated. There was > a discussion about deprecating old and broken ISAs a while back [1], > that resulted in removing EIO as a way to reduce the test overhead. > Steve sent out an email, which no one replied to, asking for EIO users > [2] shortly after the discussion. I think he disabled EIO tests after that. > > We should probably think about what fixing means in this case. I have > actively removed stat diffing from tests that I consider to be > functional (e.g., atomic boot, CPU switching, checkpointing). > > I wouldn't mind disabling stat diffing altogether until we have figured > out what to do for performance regressions. I'd prefer to see some more > directed performance tests that target specific components (e.g., using > traces) and specific stats. > > //Andreas > > [2] https://www.mail-archive.com/gem5-dev@gem5.org/msg19379.html > IMPORTANT NOTICE: The contents of this email and any attachments are > confidential and may also be privileged. If you are not the intended > recipient, please notify the sender immediately and do not disclose the > contents to any other person, use it for any purpose, or store or copy the
Re: [gem5-dev] nightly regressions
On 01/04/2017 12:27, Gabe Black wrote: Hi folks. I'm working through the nightly regressions to get them to a good point for a rebase of our internal branch of gem5, and I've noticed a few things: 1. The stats have been changed but not updated a bunch of times. I've identified almost all the points this has happened since the references were last updated, and have patches which fix them. Some stat changes are a little fishy, but I'll at least identify the guilty change(s) so that their authors can look them over. This is really hard to get right with the current system of "push to submit". I would really like to avoid including stat updates in normal code submissions. It would make it really hard to automatically submit code (there would be stat conflicts for every single non-trivial change) and it'd make cherry-picking really annoying. Ideally, the CI system should compare the stat output after applying a CL to the previous stat update. That way, you can easily spot the difference when submitting new code. 2. The SPARC FS regression were just plain not running because its configuration had been broken. I'll have a patch to fix this. 3. The nightly regressions are still checking gem5 out from mercurial. We should obviously fix this. However, the repo is kept in sync with the golden git repo using a cron, so it's not quite as bad as it seems. 4. The "encumbered" repository has, as far as I can tell, not be converted from mercurial to git. Probably this isn't a problem because this code is mostly unchanging and becoming less relevant over time, especially since EIO support was removed from the process classes (it was, right?). 5. The EIO code is also broken, because it tries to call "fatal" with a "(void)" cast in front of it in a ternary operation. Something like "foo ? (void)fatal("a bad thing happened") : (void)fatal("a different bad thing happened")". What "fatal" expands to now is apparently not compatible with this usage. Since I can access the encumbered repository, I can attempt to fix this. I can (and in at least in some cases will) fix most of these issues, except maybe 4 if we still want encumbered to exist. Please speak up if I've misinterpreted something or am missing some important bit of context. [1] https://www.mail-archive.com/gem5-dev@gem5.org/msg19438.html As far as I know, the encumbered/EIO repo has been deprecated. There was a discussion about deprecating old and broken ISAs a while back [1], that resulted in removing EIO as a way to reduce the test overhead. Steve sent out an email, which no one replied to, asking for EIO users [2] shortly after the discussion. I think he disabled EIO tests after that. We should probably think about what fixing means in this case. I have actively removed stat diffing from tests that I consider to be functional (e.g., atomic boot, CPU switching, checkpointing). I wouldn't mind disabling stat diffing altogether until we have figured out what to do for performance regressions. I'd prefer to see some more directed performance tests that target specific components (e.g., using traces) and specific stats. //Andreas [2] https://www.mail-archive.com/gem5-dev@gem5.org/msg19379.html IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you. ___ gem5-dev mailing list gem5-dev@gem5.org http://m5sim.org/mailman/listinfo/gem5-dev
[gem5-dev] Cron <m5test@zizzer> /z/m5/regression/do-regression quick
*** diff[simerr]: SKIPPED* build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing-ruby: CHANGED! * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing: CHANGED!* build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-simple: CHANGED! * build/MIPS/tests/opt/quick/se/03.learning-gem5/mips/linux/learning-gem5-p1-two-level: CHANGED! * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-atomic: CHANGED! * build/MIPS/tests/opt/quick/se/00.hello/mips/linux/o3-timing: CHANGED! * build/POWER/tests/opt/quick/se/00.hello/power/linux/simple-atomic: CHANGED! * build/POWER/tests/opt/quick/se/00.hello/power/linux/o3-timing: CHANGED! * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-atomic: CHANGED! * build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-timing: CHANGED! * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing-ruby: CHANGED! * build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/o3-timing: CHANGED! * build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-atomic: CHANGED! * build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing: CHANGED! * build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-atomic-mp: CHANGED! * build/SPARC/tests/opt/quick/se/03.learning-gem5/sparc/linux/learning-gem5-p1-simple: CHANGED! * build/SPARC/tests/opt/quick/se/03.learning-gem5/sparc/linux/learning-gem5-p1-two-level: CHANGED! * build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-timing-mp: CHANGED! * build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/o3-timing-mp: CHANGED! * build/SPARC/tests/opt/quick/se/50.vortex/sparc/linux/simple-atomic: CHANGED! * build/SPARC/tests/opt/quick/se/70.twolf/sparc/linux/simple-atomic: CHANGED! * build/SPARC/tests/opt/quick/se/50.vortex/sparc/linux/simple-timing: CHANGED! * build/SPARC/tests/opt/quick/se/10.mcf/sparc/linux/simple-atomic: CHANGED! * build/SPARC/tests/opt/quick/se/70.twolf/sparc/linux/simple-timing: CHANGED! * build/X86/tests/opt/quick/se/03.learning-gem5/x86/linux/learning-gem5-p1-simple: CHANGED! * build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing: CHANGED! * build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing-ruby: CHANGED!Maximum error magnitude: +100.00% * build/X86/tests/opt/quick/se/03.learning-gem5/x86/linux/learning-gem5-p1-two-level: CHANGED! * build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-atomic: CHANGED! * build/X86/tests/opt/quick/se/00.hello/x86/linux/o3-timing: CHANGED! * build/X86/tests/opt/quick/se/70.twolf/x86/linux/simple-atomic: CHANGED! * build/X86/tests/opt/quick/se/10.mcf/x86/linux/simple-atomic: CHANGED! * build/X86/tests/opt/quick/se/70.twolf/x86/linux/simple-timing: CHANGED! * build/ARM/tests/opt/quick/se/50.vortex/arm/linux/simple-atomic: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/simple-timing: CHANGED! * build/ARM/tests/opt/quick/se/10.mcf/arm/linux/simple-timing: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/o3-timing-checker: CHANGED! * build/ARM/tests/opt/quick/se/03.learning-gem5/arm/linux/learning-gem5-p1-two-level: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/o3-timing: CHANGED! * build/ARM/tests/opt/quick/se/03.learning-gem5/arm/linux/learning-gem5-p1-simple: CHANGED! * build/ARM/tests/opt/quick/se/50.vortex/arm/linux/simple-timing: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/simple-atomic: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/simple-atomic-dummychecker: CHANGED! * build/ARM/tests/opt/quick/se/00.hello/arm/linux/minor-timing: CHANGED! * build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-timing: CHANGED! * build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-timing-dual: CHANGED! * build/ARM/tests/opt/quick/se/10.mcf/arm/linux/simple-atomic: CHANGED! * build/ARM/tests/opt/quick/se/70.twolf/arm/linux/simple-atomic: CHANGED! * build/ARM/tests/opt/quick/se/70.twolf/arm/linux/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-timing: CHANGED! * build/RISCV/tests/opt/quick/se/00.hello/riscv/linux/simple-timing-ruby: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-timing-ruby: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64a/simple-atomic: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64m/simple-timing-ruby: CHANGED! * build/RISCV/tests/opt/quick/se/02.insttest/riscv/linux-rv64d/simple-atomic: CHANGED!