That is my intention. I don't think it's a good idea to wait until SE
and FS are completely integrated before committing any code. There are
going to be a lot of changes involved, and I don't want 100 changes
sitting in a queue that I have to keep up to date, forget what the
patches are for, etc. My short term goal is to get one binary that can
run SE or FS scripts. That will be done without just stapling the two
modes together, as much as makes sense for a first pass at least. At
some point I'm going to introduce another degree of freedom where you
assign a workload object to a system, and that's Linux, or hello
world, or a BIOS which will load things off disk, or whatever else.
Then you could assign a hello world workload to a system with a set of
devices attached, and you'd get what you want. There were some issues
with includes that I'm hoping Nate will help me sort out, but until
then I'm stuck on that front. But in any case, getting from here to
there, which will not be simple by any stretch, will not come in one
fell swoop. I think giant, sudden changes are bad for everybody.
As far as compiling in the code selective, I have my doubts that
that's a good idea. It introduces a lot of variability as far as what
environment the code gets built in, and waiting an extra 30 seconds or
less for all the devices to build on a decent machine is not that big
a deal. If you change something unrelated and do an incremental build,
you shouldn't (note I didn't say won't) end up rebuilding any of those
files anyways.
Quoting Steve Reinhardt <[email protected]>:
On 2011-09-26 13:27:15, Steve Reinhardt wrote:
> I'm hugely supportive of this direction... in fact I have my own
patch I was working on to allow devices in SE mode, though it is
much more limited in scope.
>
> I think we may have different goals though. Is your purpose here
just to get the devices to make it through the compiler and linker
without complaints, as another step toward integrating SE and FS?
It doesn't look like any of these devices would actually be usable
in SE mode, so I assume that's your angle.
>
> In contrast,
Oops, accidentally clicked 'publish' instead of 'edit'...
Anyway, I definitely would like to see the device infrastructure
compiled in to SE mode; as I said, I've been working on this myself,
and ran into the same Platform issue (though I did the brute force
solution of just putting the Param.Platform in the System class
inside an "if buildEnv[FULL_SYSTEM]:"). My goal is to enable
building simple devices that actually get used in SE mode, which I
suspect (as I mentioned) is different from yours.
However I'm not sure of the benefit of compiling in all the devices
when they're not usable; it seems like that just makes the compile
time unnecessarily longer. I can see the value of having this as a
step toward integrating SE and FS, but I'm not in favor of
committing it until it's actually useful (i.e., until integrated FS
and SE actually works).
Even when we do get there, I think we should keep some conditionals
in place so that people who really just want SE mode don't have to
compile all the devices. I like the idea of having the ability to
compile everything into a single binary (SE and FS, multiple ISAs,
multiple coherence protocols, etc.) but if we do get to that point
we don't want to require everyone to always compile everything, and
I'd say we should start thinking now about how we're going to manage
that. So my guess is we don't want to make all these objects
unconditional, we just want to rework the conditions to make SE+FS
possible but not mandatory.
- Steve
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.m5sim.org/r/885/#review1588
-----------------------------------------------------------
On 2011-09-26 02:21:44, Gabe Black wrote:
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.m5sim.org/r/885/
-----------------------------------------------------------
(Updated 2011-09-26 02:21:44)
Review request for Default, Ali Saidi, Gabe Black, Steve Reinhardt,
and Nathan Binkert.
Summary
-------
SE/FS: Build the devices in SE mode.
Diffs
-----
src/arch/sparc/isa_traits.hh cf26f9578cd0
src/base/vnc/SConscript cf26f9578cd0
src/cpu/SConscript cf26f9578cd0
src/cpu/intr_control.cc cf26f9578cd0
src/dev/SConscript cf26f9578cd0
src/dev/alpha/AlphaBackdoor.py cf26f9578cd0
src/dev/alpha/SConscript cf26f9578cd0
src/dev/alpha/backdoor.hh cf26f9578cd0
src/dev/alpha/backdoor.cc cf26f9578cd0
src/dev/alpha/tsunami.cc cf26f9578cd0
src/dev/arm/SConscript cf26f9578cd0
src/dev/arm/gic.cc cf26f9578cd0
src/dev/arm/realview.cc cf26f9578cd0
src/dev/mips/SConscript cf26f9578cd0
src/dev/mips/malta.cc cf26f9578cd0
src/dev/mips/malta_cchip.cc cf26f9578cd0
src/dev/mips/malta_io.cc cf26f9578cd0
src/dev/mips/malta_pchip.cc cf26f9578cd0
src/dev/simple_disk.cc cf26f9578cd0
src/dev/sparc/SConscript cf26f9578cd0
src/dev/sparc/iob.cc cf26f9578cd0
src/dev/sparc/t1000.cc cf26f9578cd0
src/dev/x86/SConscript cf26f9578cd0
src/dev/x86/i82094aa.cc cf26f9578cd0
src/dev/x86/pc.cc cf26f9578cd0
Diff: http://reviews.m5sim.org/r/885/diff
Testing
-------
Thanks,
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