This is awesome.

  Nate

On Sun, Nov 27, 2011 at 6:54 AM, Steve Reinhardt <[email protected]> wrote:
> Cool!  Congrats, that's pretty nice.
> On Nov 26, 2011 11:50 PM, "Gabe Black" <[email protected]> wrote:
>
>> This took less time than I thought. Tada! There's still a lot of work to
>> do, but (modulo bugs) I've consolidated SE and FS into a single binary
>> that can run either.
>>
>> Gabe
>>
>> gblack@chips ~/m5/repos/gem5.sefs $ scons build/ALPHA/tests/opt/quick
>> build/ALPHA_MOESI_hammer/tests/opt/quick build/ARM/tests/opt/quick
>> build/MIPS/tests/opt/quick build/POWER/tests/opt/quick
>> build/SPARC/tests/opt/quick build/X86/tests/opt/quick
>> scons: Reading SConscript files ...
>> Checking for leading underscore in global variables...(cached) no
>> Checking for C header file Python.h... (cached) yes
>> Checking for C library pthread... (cached) yes
>> Checking for C library dl... (cached) yes
>> Checking for C library util... (cached) yes
>> Checking for C library m... (cached) yes
>> Checking for C library python2.7... (cached) yes
>> Checking for accept(0,0,0) in C++ library None... (cached) yes
>> Checking for zlibVersion() in C++ library z... (cached) yes
>> Checking for clock_nanosleep(0,0,NULL,NULL) in C library None... (cached)
>> no
>> Checking for clock_nanosleep(0,0,NULL,NULL) in C library rt... (cached) yes
>> Checking for C header file fenv.h... (cached) yes
>> Reading SConsopts
>> Building in /home/gblack/m5/repos/gem5.sefs/build/ALPHA
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/ALPHA
>> Building in /home/gblack/m5/repos/gem5.sefs/build/ALPHA_MOESI_hammer
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/ALPHA_MOESI_hammer
>> Building in /home/gblack/m5/repos/gem5.sefs/build/ARM
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/ARM
>> Building in /home/gblack/m5/repos/gem5.sefs/build/MIPS
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/MIPS
>> Building in /home/gblack/m5/repos/gem5.sefs/build/POWER
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/POWER
>> Building in /home/gblack/m5/repos/gem5.sefs/build/SPARC
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/SPARC
>> Building in /home/gblack/m5/repos/gem5.sefs/build/X86
>> Using saved variables file
>> /home/gblack/m5/repos/gem5.sefs/build/variables/X86
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> *****
>>
>> build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-atomic
>> passed.
>>
>> *****
>>
>> build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-atomic-dual
>> passed.
>>
>> *****
>>
>> build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-timing
>> passed.
>>
>> *****
>>
>> build/ALPHA/tests/opt/quick/fs/10.linux-boot/alpha/linux/tsunami-simple-timing-dual
>> passed.
>>
>> *****
>>
>> build/ALPHA/tests/opt/quick/fs/80.netperf-stream/alpha/linux/twosys-tsunami-simple-atomic
>> passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/inorder-timing
>> passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/o3-timing passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-atomic
>> passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-timing
>> passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/00.hello/alpha/linux/simple-timing-ruby
>> passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/tru64/o3-timing passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/tru64/simple-atomic
>> passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/00.hello/alpha/tru64/simple-timing
>> passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/00.hello/alpha/tru64/simple-timing-ruby
>> passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/01.hello-2T-smt/alpha/linux/o3-timing
>> passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/20.eio-short/alpha/eio/simple-atomic passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/20.eio-short/alpha/eio/simple-timing passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/30.eio-mp/alpha/eio/simple-atomic-mp passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/30.eio-mp/alpha/eio/simple-timing-mp passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/50.memtest/alpha/linux/memtest passed.
>>
>> ***** build/ALPHA/tests/opt/quick/se/50.memtest/alpha/linux/memtest-ruby
>> passed.
>>
>> *****
>> build/ALPHA/tests/opt/quick/se/60.rubytest/alpha/linux/rubytest-ruby
>> passed.
>>
>> *****
>>
>> build/ALPHA_MOESI_hammer/tests/opt/quick/se/00.hello/alpha/linux/simple-timing-ruby-MOESI_hammer
>> passed.
>>
>> *****
>>
>> build/ALPHA_MOESI_hammer/tests/opt/quick/se/00.hello/alpha/tru64/simple-timing-ruby-MOESI_hammer
>> passed.
>>
>> *****
>>
>> build/ALPHA_MOESI_hammer/tests/opt/quick/se/50.memtest/alpha/linux/memtest-ruby-MOESI_hammer
>> passed.
>>
>> *****
>>
>> build/ALPHA_MOESI_hammer/tests/opt/quick/se/60.rubytest/alpha/linux/rubytest-ruby-MOESI_hammer
>> passed.
>>
>> *****
>> build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-atomic
>> passed.
>>
>> *****
>>
>> build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-atomic-dual
>> passed.
>>
>> *****
>> build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-timing
>> passed.
>>
>> *****
>>
>> build/ARM/tests/opt/quick/fs/10.linux-boot/arm/linux/realview-simple-timing-dual
>> passed.
>>
>> ***** build/ARM/tests/opt/quick/se/00.hello/arm/linux/o3-timing passed.
>>
>> ***** build/ARM/tests/opt/quick/se/00.hello/arm/linux/simple-atomic passed.
>>
>> ***** build/ARM/tests/opt/quick/se/00.hello/arm/linux/simple-timing passed.
>>
>> ***** build/MIPS/tests/opt/quick/se/00.hello/mips/linux/inorder-timing
>> passed.
>>
>> ***** build/MIPS/tests/opt/quick/se/00.hello/mips/linux/o3-timing passed.
>>
>> ***** build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-atomic
>> passed.
>>
>> ***** build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing
>> passed.
>>
>> *****
>> build/MIPS/tests/opt/quick/se/00.hello/mips/linux/simple-timing-ruby
>> passed.
>>
>> ***** build/POWER/tests/opt/quick/se/00.hello/power/linux/o3-timing passed.
>>
>> ***** build/POWER/tests/opt/quick/se/00.hello/power/linux/simple-atomic
>> passed.
>>
>> ***** build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/inorder-timing
>> passed.
>>
>> ***** build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-atomic
>> passed.
>>
>> ***** build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing
>> passed.
>>
>> *****
>> build/SPARC/tests/opt/quick/se/00.hello/sparc/linux/simple-timing-ruby
>> passed.
>>
>> *****
>> build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/inorder-timing
>> passed.
>>
>> ***** build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/o3-timing
>> passed.
>>
>> *****
>> build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-atomic
>> passed.
>>
>> *****
>> build/SPARC/tests/opt/quick/se/02.insttest/sparc/linux/simple-timing
>> passed.
>>
>> *****
>>
>> build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/o3-timing-mp
>> passed.
>>
>> *****
>>
>> build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-atomic-mp
>> passed.
>>
>> *****
>>
>> build/SPARC/tests/opt/quick/se/40.m5threads-test-atomic/sparc/linux/simple-timing-mp
>> passed.
>>
>> *****
>> build/X86/tests/opt/quick/fs/10.linux-boot/x86/linux/pc-simple-atomic
>> passed.
>>
>> *****
>> build/X86/tests/opt/quick/fs/10.linux-boot/x86/linux/pc-simple-timing
>> passed.
>>
>> ***** build/X86/tests/opt/quick/se/00.hello/x86/linux/o3-timing passed.
>>
>> ***** build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-atomic passed.
>>
>> ***** build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing passed.
>>
>> ***** build/X86/tests/opt/quick/se/00.hello/x86/linux/simple-timing-ruby
>> passed.
>>
>> scons: done building targets.
>>
>> On 11/18/11 11:02, Ali Saidi wrote:
>> > I'll be amazingly busy for the next couple of weeks.
>> >
>> > Ali
>> >
>> > On Fri, 18 Nov 2011 02:42:44 -0800, Gabe Black <[email protected]>
>> > wrote:
>> >> Hi folks. I have all of the preprocessor FULL_SYSTEMs replaced with C++
>> >> constant FullSystems (except the one where FULL_SYSTEM is assigned to
>> >> FullSystem) and have passed all the quick regressions. I just started a
>> >> run of all the regressions, and expect it will take a day to run at
>> >> minimum. I'll then turn all the patches I have into commits, push them
>> >> into my SE/FS repo, and pull in the dev repo and merge. The merge commit
>> >> will go in the SE/FS repo. At this point, SE and FS could theoretically
>> >> be run from the same binary if FullSystem was changed from a constant to
>> >> a variable/parameter, but since it isn't they can't. The scripts would
>> >> also have to be updated significantly for that to happen. Because all
>> >> functions, classes, and member variables are available in SE and FS mode
>> >> but not all will do something sensible/work/not segfault in both modes,
>> >> there are a few more possibilities to shoot yourself in the foot in my
>> >> repository.
>> >>
>> >> Does this seem like a good point to get feedback and fold things into
>> >> the main repository? My next step(s) will probably involve making
>> >> FullSystem a global variable (or function?) set with a parameter and
>> >> make the scripts set it, but not to go all the way and get rid of
>> >> separate builds for SE and FS even though they'll be the same thing.
>> >> There are going to be details like the regressions/regression scripts
>> >> which will need to be updated first, and probably the mode will need to
>> >> be worked into the quick/long/opt/fast/debug path scheme. The next good
>> >> spot will likely be in there somewhere.
>> >>
>> >> If this is a bad time for logistical reasons (looming conference
>> >> deadline, other large change nearly ready, etc) I can hold off for a
>> >> little while but still use this as a merge point.
>> >>
>> >> Gabe
>> >> _______________________________________________
>> >> gem5-dev mailing list
>> >> [email protected]
>> >> http://m5sim.org/mailman/listinfo/gem5-dev
>> >
>> > _______________________________________________
>> > gem5-dev mailing list
>> > [email protected]
>> > http://m5sim.org/mailman/listinfo/gem5-dev
>>
>> _______________________________________________
>> gem5-dev mailing list
>> [email protected]
>> http://m5sim.org/mailman/listinfo/gem5-dev
>>
> _______________________________________________
> gem5-dev mailing list
> [email protected]
> http://m5sim.org/mailman/listinfo/gem5-dev
>
_______________________________________________
gem5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to