Steve Reinhardt [Thu, 11 Dec 2003 08:16:46 +0000 (00:16 -0800)]
Stats & serialization tweaks & cleanup. Unserializing from
a checkpoint now gives identical results to running from scratch
and doing at switchover at the same cycle!
- CPUs start at cycle 0 again, not cycle 1.
- curTick is now serialized & unserialized.
- Stats get reset in main (before event loop). Since this is done
after curTick is unserialized, simTicks gets set correctly for
running from a checkpoint.
- Simplify serialization to happen in a single pass.
- s/Serializeable/Serializable/
arch/alpha/isa_traits.hh:
dev/etherlink.hh:
sim/eventq.cc:
sim/eventq.hh:
s/Serializeable/Serializable/
kern/tru64/tru64_system.cc:
sim/process.cc:
Make initial CPU activation on cycle 0 again (not 1).
sim/main.cc:
Reset stats before getting started.
Make error message on falling out of event loop
more meaningful.
sim/serialize.cc:
sim/serialize.hh:
Get rid of now-useless initial pass; serialization is
done in a single pass now.
Serialize & unserialize curTick.
Wrap curTick and mainEventQueue in a "globals" Serializable object.
s/Serializeable/Serializable/
sim/sim_object.cc:
Add static function to serialize all SimObjects.
sim/sim_object.hh:
Add static function to serialize all SimObjects.
s/Serializeable/Serializable/
--HG--
extra : convert_revision :
9dcc411d0009b54b8eb61c3a509680b81b9f6f68
Steve Reinhardt [Thu, 11 Dec 2003 01:49:41 +0000 (17:49 -0800)]
Rename RegResetCallback to registerResetCallback().
Add reset callback for bus (to fix idle cycles computation).
base/statistics.cc:
base/statistics.hh:
sim/sim_object.cc:
Rename RegResetCallback to registerResetCallback().
--HG--
extra : convert_revision :
c886c98143d4851f709ef95de3120b4494f8e4d2
Steve Reinhardt [Thu, 11 Dec 2003 01:47:28 +0000 (17:47 -0800)]
Factor ExecContext::setStatus(), BaseCPU::execCtxStatusChange(),
and SimpleCPU::setStatus() into separate functions. For example,
setStatus(Active) is now activate().
--HG--
extra : convert_revision :
4392e07caf6c918db0b535f613175109681686fe
Steve Reinhardt [Wed, 10 Dec 2003 04:25:52 +0000 (20:25 -0800)]
Minor fixes. Somehow do-tests.pl suddenly started failing
on test5 because of a wrong exit code; fixed that.
sim/main.cc:
No need to ignore SIGPIPE, as far as I know.
sim/sim_events.cc:
A CountedExitEvent is a normal termination, so
should have an exit code of 0.
--HG--
extra : convert_revision :
8b5072aca54f3ca08b2815b73ac01c00e4da49b6
Steve Reinhardt [Wed, 10 Dec 2003 00:43:54 +0000 (16:43 -0800)]
Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision :
c8d6f2e6f590b7d1940b889bbec09e0e46f48c86
Nathan Binkert [Tue, 9 Dec 2003 22:41:08 +0000 (17:41 -0500)]
Make the simulator compile on an Itanium.
base/hashmap.hh:
Not all machines need these extra hash functions
also make Counter int64_t since that's really what is needed
--HG--
extra : convert_revision :
b5b5d65db157d01d76adbf4de4882b1516c9f2e7
Steve Reinhardt [Tue, 9 Dec 2003 22:21:46 +0000 (14:21 -0800)]
Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision :
c74b502bf44ac300e44c9aa7d6d6e3c55a511893
Steve Reinhardt [Tue, 9 Dec 2003 22:21:38 +0000 (14:21 -0800)]
Minor tweaks to make a switchover at tick N match
restarting from a checkpoint at tick N.
cpu/simple_cpu/simple_cpu.cc:
On a CPU switchover, schedule the new CPU's first tick event
for curTick+1 instead of curTick.
--HG--
extra : convert_revision :
f0757d6f028214d36c1cff992db688fd6e8a6fdc
Steve Reinhardt [Tue, 9 Dec 2003 22:19:35 +0000 (14:19 -0800)]
Generate a fault when a privileged PAL call is
executed in non-privileged (non-PAL) mode.
--HG--
extra : convert_revision :
c8823a1eec27d801a1ed6110ade07354c4dd2a32
Nathan Binkert [Tue, 9 Dec 2003 18:05:43 +0000 (13:05 -0500)]
Sweeping change in the stats package....again...
base/statistics.cc:
- Merge the m5 display and simplescalar compatible display functions.
- Use functors for the stats printing instead of functions. This
gets rid of the very long argument lists and improves clarity.
- Fix a bug in binning that caused an invalid allocation to occur.
base/statistics.hh:
- Instead of using a compile time variable to choose whether
to print in ss compat mode, we use a runtime variable.
This is how we'll choose python output.
- There are no more virtual functions in the statistics themselves.
All virtual functions have been moved into a secondary helper class.
Every stat has an associated helper class that knows how to access
certain variables in that stat.
There is a hash_map from the stat to it's helper class data. This was
done because the helper data is only used during setup, stats reset,
and printing. All of which happen rarely, and you want to avoid
any performance hit that you can.
- To provide the name(), desc(), etc functions to classes so that the
user can set various parameters to the stats class, a single class
containing all of those functions was created. An odd trick was
done to actually make this class derive from the stat class because
a base class with no data actually does end up taking up space.
- The detail namespace was removed for now. I'll put it back when the
package is not in so much flux.
- Standard deviation, and mean were added to all distribution stats.
- There are several bugfixes and changes that aren't mentioned
test/Makefile:
Don't test sim_stats foo.
test/stattest.cc:
Don't test sim_stats foo.
Fix bin usage so that it corresponds to the current usage.
--HG--
extra : convert_revision :
ce8d9a8d485a84d55799f253d851e83650684170
Steve Raasch [Mon, 8 Dec 2003 22:34:14 +0000 (17:34 -0500)]
Remove mostly-broken binning stuff from "get"
Add parser debugging command-line option
--HG--
extra : convert_revision :
2f8a450f11ed10c3d1a5e8e58232aa8f3e5994c2
Steve Raasch [Mon, 8 Dec 2003 22:13:18 +0000 (17:13 -0500)]
Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/y/sraasch/m5
--HG--
extra : convert_revision :
4e50e20af73d181de7365c9b77de78d70fcede8d
Steve Raasch [Mon, 8 Dec 2003 22:12:45 +0000 (17:12 -0500)]
Fetch-loss now uses the stats package
--HG--
extra : convert_revision :
c930a849e866177ceb67ec5db9444e8cfb4e0694
Nathan Binkert [Mon, 8 Dec 2003 19:01:48 +0000 (14:01 -0500)]
Instead of keeping track of the fraction of time that we're
idle, keep track of the fraction of time we're not idle. This
works better because the default processor state is idle, and
the default stat value is 0.
Keep the stat as idleFraction which is a formula that is equal
to 1 - notIdleFraction
--HG--
extra : convert_revision :
331c2e46f45ae0abda46988567ac2c4f7c42ccad
Nathan Binkert [Mon, 8 Dec 2003 18:15:18 +0000 (13:15 -0500)]
move setStatus into the .cc file
--HG--
extra : convert_revision :
9ccf885274d72ea3151a0db76b580dd51763edab
Steve Reinhardt [Sat, 6 Dec 2003 17:57:59 +0000 (09:57 -0800)]
Various cleanup. Mostly forcing initialization of some fields...
I noticed that checkpoints dumped from m5.debug and m5.opt had
differences, which is no longer the case (other than addresses
encoded in names).
cpu/full_cpu/smt.hh:
Get rid of unused SMT_MAX_CPUS.
sim/debug.cc:
Use AutoDelete for DebugBreakEvent.
sim/serialize.cc:
sim/serialize.hh:
Move constructor & destructor to header so they can be inlined.
--HG--
extra : convert_revision :
bc68c2c9b053b1de0d655ed555734419fafd0b83
Lisa Hsu [Fri, 5 Dec 2003 00:26:31 +0000 (19:26 -0500)]
remote_gdb.cc:
fix remote gdb
base/remote_gdb.cc:
fix remote gdb
--HG--
extra : convert_revision :
886cad5037e2124e6087be03f2903f07aeed0679
Steve Raasch [Wed, 3 Dec 2003 17:48:57 +0000 (12:48 -0500)]
Minor fixes to the Segmented and Seznec IQ models
--HG--
extra : convert_revision :
c8f9dc0465da1b119d6cf7d4eb599f0a16a25c92
Steve Reinhardt [Tue, 2 Dec 2003 06:39:27 +0000 (22:39 -0800)]
Formatting & doxygen docs for new syscall emulation code.
arch/alpha/alpha_linux_process.cc:
arch/alpha/alpha_linux_process.hh:
arch/alpha/alpha_tru64_process.cc:
arch/alpha/alpha_tru64_process.hh:
sim/syscall_emul.cc:
sim/syscall_emul.hh:
Formatting & doxygen.
--HG--
extra : convert_revision :
4f07dd37e254120800dd0d5c0eb47acc9c00cb3f
Steve Reinhardt [Tue, 2 Dec 2003 03:34:51 +0000 (19:34 -0800)]
Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision :
d66ebc598fdcfc9477ea5a1e455b21d7b9e56936
Steve Reinhardt [Tue, 2 Dec 2003 03:34:38 +0000 (19:34 -0800)]
Restructuring of LiveProcess etc. to support multiple emulated OS syscall
interfaces, and specific support for Alpha Linux. Split syscall emulation
functions into several groups, based on whether they depend on the specific
OS and/or architecture (and all combinations of above), including the use of
template functions to support syscalls with slightly different constants
or interface structs.
arch/alpha/alpha_tru64_process.cc:
Incorporate full Tru64 object definition here, including structure and constant definitions.
This way we can wrap all of the functions inside the object, and not worry about namespace
conflicts because no one outside this file will ever see it.
base/loader/aout_object.cc:
base/loader/aout_object.hh:
base/loader/ecoff_object.cc:
base/loader/ecoff_object.hh:
base/loader/elf_object.cc:
base/loader/elf_object.hh:
base/loader/object_file.cc:
base/loader/object_file.hh:
Add enums to ObjectFile to indicate the object's architecture and operating system.
cpu/exec_context.cc:
prog.hh is now process.hh
cpu/exec_context.hh:
prog.hh is now process.hh
move architecture-specific syscall arg accessors into ExecContext
cpu/simple_cpu/simple_cpu.cc:
No need to include prog.hh (which has been renamed)
sim/process.cc:
sim/process.hh:
LiveProcess is now effectively an abstract base class.
New LiveProcess::create() function takes an object file and dynamically picks the
appropriate subclass of LiveProcess to handle the syscall interface that file expects
(currently Tru64 or Linux).
--HG--
rename : arch/alpha/fake_syscall.cc => arch/alpha/alpha_tru64_process.cc
rename : sim/prog.cc => sim/process.cc
rename : sim/prog.hh => sim/process.hh
extra : convert_revision :
4a03ca7d94a34177cb672931f8aae83a6bad179a
Erik Hallnor [Tue, 25 Nov 2003 23:11:48 +0000 (18:11 -0500)]
Change the way writebacks are handled to make probing easier. Minor fixes to get coherence-test to work again.
--HG--
extra : convert_revision :
86915c6651e72ca4cbf85111599e451237f74a71
Erik Hallnor [Mon, 24 Nov 2003 20:46:39 +0000 (15:46 -0500)]
Extract documentation for all classes.
--HG--
extra : convert_revision :
17428b19a2230199a8ac79b7d8f727d58d3428ac
Lisa Hsu [Sun, 23 Nov 2003 17:57:16 +0000 (12:57 -0500)]
get rid of the errors from simple-test1 and test1-6
base/statistics.cc:
fix how some stats are printed to get rid of some of those pesky regression errors. this does not fix all of them, just the unimportant ones.
--HG--
extra : convert_revision :
247675fd5bbb47e29c8c077a8d2b2996be1b7072
Nathan Binkert [Sat, 22 Nov 2003 20:12:56 +0000 (15:12 -0500)]
Go Blue!!!!
base/statistics.hh:
Simple formatting fixes
--HG--
extra : convert_revision :
608fe1c37f58426d65cb5ec172764a6b610be6c8
Nathan Binkert [Sat, 22 Nov 2003 20:09:30 +0000 (15:09 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into zans.eecs.umich.edu:/z/binkertn/research/m5/stats
--HG--
extra : convert_revision :
cc1611895ad790cdaff75f752f10c048a5bff323
Nathan Binkert [Sat, 22 Nov 2003 20:07:53 +0000 (15:07 -0500)]
We only need to choose that we do want binning, or we don't.
no need for multiple bin classes. If multiple bins are needed, we
can always do it with ini type config instead.
kern/tru64/tru64_events.hh:
sim/system.cc:
sim/system.hh:
No more GenBin always use MainBin
--HG--
extra : convert_revision :
8c466f302324c33b59d47d0da04583b2517fc72c
Erik Hallnor [Fri, 21 Nov 2003 04:03:42 +0000 (23:03 -0500)]
Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
--HG--
extra : convert_revision :
184533b3ec794bdff49cd1a6b8f2814f7af4237c
Lisa Hsu [Thu, 20 Nov 2003 13:06:33 +0000 (08:06 -0500)]
full_cpu.cc:
change name of numTicks to "numTicks" instead of "number of ticks" (which screws up scripts).
--HG--
extra : convert_revision :
9f68c5586743ea4c284609b405d5d9f23bd7cd49
Erik Hallnor [Wed, 19 Nov 2003 21:41:41 +0000 (16:41 -0500)]
Pass all the related information (the memreq) to the findBlock call. Working towards not caring about block addresses anymore.
--HG--
extra : convert_revision :
5700b8e843cd97c9bf1793d81615e65f1cf1e1aa
Erik Hallnor [Wed, 19 Nov 2003 21:40:05 +0000 (16:40 -0500)]
Pass MemReqPtr by reference.
--HG--
extra : convert_revision :
141d50bb0bb010cee38231ec7b7289fa834b37d5
Erik Hallnor [Wed, 19 Nov 2003 20:26:14 +0000 (15:26 -0500)]
Move some MSHR typedefs into the class, transition from MSHRblah to MSHR::blah.
--HG--
extra : convert_revision :
4deb260e4374ca05f965cfc27169e838971d5e0f
Nathan Binkert [Sat, 15 Nov 2003 17:32:36 +0000 (12:32 -0500)]
make the name consistent with what it does.
--HG--
extra : convert_revision :
34ad9362bfe8a80a4c4ed332f7254f99da51c015
Nathan Binkert [Fri, 14 Nov 2003 06:19:16 +0000 (01:19 -0500)]
Make it so that we create a directory for each checkpoint so that
there aren't so many files littering your directory
dev/disk_image.cc:
Checkpoints now in a directory
sim/serialize.hh:
Make it so that we create a directory for each checkpoint so that
there aren't so many files littering your directory.
Remove unused variable
--HG--
extra : convert_revision :
261824eee62f7b68f6ae6e3dbd49ad5128ced148
Nathan Binkert [Wed, 12 Nov 2003 20:23:31 +0000 (15:23 -0500)]
statistics.cc:
Only reactivate the original bin if it actually exists.
base/statistics.cc:
Only reactivate the original bin if it actually exists.
--HG--
extra : convert_revision :
e71ba0680d79ca439487a31d8f365429bff8c375
Nathan Binkert [Wed, 12 Nov 2003 19:59:58 +0000 (14:59 -0500)]
in the case where we don't have any bins, we don't want to panic
--HG--
extra : convert_revision :
e9056ca020d0f3db388b31a074b03e4d521f8705
Steve Reinhardt [Wed, 12 Nov 2003 18:36:12 +0000 (10:36 -0800)]
Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision :
bb9bba89ad0b25b0a4748bf46b714e2259321ad9
Steve Reinhardt [Wed, 12 Nov 2003 18:35:48 +0000 (10:35 -0800)]
Change setup scheme to split base configurations from configuration options.
Completely backward compatible except for setup file locations.
See comment in setup script for more details.
--HG--
extra : convert_revision :
4e4a28bcbe36e0c6fd688dd133274bb80ae442f5
Erik Hallnor [Wed, 12 Nov 2003 16:59:04 +0000 (11:59 -0500)]
Merge ehallnor@zizzer:/bk/m5
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5
--HG--
extra : convert_revision :
7835ada99c5ff47a9013d2827311a24e1447ac16
Erik Hallnor [Wed, 12 Nov 2003 16:58:56 +0000 (11:58 -0500)]
Create a compressed cache if there is a compressed bus or data should be stored compressed
--HG--
extra : convert_revision :
eade8951bed25a222e5e1ee370d431ec5c0a200d
Steve Reinhardt [Wed, 12 Nov 2003 16:41:09 +0000 (08:41 -0800)]
Add config for simple purely functional simulation (no caches).
--HG--
extra : convert_revision :
e2466d051e67d76e841416deeb95974c8f9516fe
Steve Reinhardt [Wed, 12 Nov 2003 16:40:32 +0000 (08:40 -0800)]
Rewrite getdirentries to replace SS-derived version.
--HG--
extra : convert_revision :
72eced315bbb331d3068279e60f1f0a390eb687a
Steve Reinhardt [Mon, 10 Nov 2003 04:36:54 +0000 (20:36 -0800)]
Minor enhancements to rundiff script.
util/rundiff:
Make sure Algorithm::Diff is loaded only if you need it
(so it's ok if you don't have it installed).
Add command-line options for things you might want to change:
- diff algorithm
- # of context lines
- # of lines of lookahead
--HG--
extra : convert_revision :
b3ba02e1816eee286f47eb28ab578fa4734bac3a
Steve Reinhardt [Sun, 9 Nov 2003 18:39:44 +0000 (10:39 -0800)]
Setup to build with gcc 3.3.2.
--HG--
extra : convert_revision :
27e73ded6c1a2089427391bfdf1afa1f020ba14f
Steve Reinhardt [Sun, 9 Nov 2003 18:03:33 +0000 (10:03 -0800)]
ISCA hack is for FULL_SYSTEM only.
--HG--
extra : convert_revision :
a90fec583e6147bda8023da7f405aeecdb469128
Steve Raasch [Fri, 7 Nov 2003 22:49:50 +0000 (17:49 -0500)]
Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/y/sraasch/new_head
--HG--
extra : convert_revision :
05dbe5ff1097b16430b647e599e56c556683c026
Steve Raasch [Fri, 7 Nov 2003 22:45:59 +0000 (17:45 -0500)]
updates for the new stats format
--HG--
extra : convert_revision :
7da435e2369a0ab4647f033e9ce16125ac7b9302
Steve Raasch [Fri, 7 Nov 2003 13:35:55 +0000 (08:35 -0500)]
It's important that there be white-space between each element
of a printed statistics line.
base/statistics.cc:
Add spaces between printed elements
--HG--
extra : convert_revision :
edcc9460fa178c39f7e3c15b3bad866ef9b263e4
Nathan Binkert [Fri, 7 Nov 2003 10:06:22 +0000 (05:06 -0500)]
add a couple of hacks to get thigns going for ISCA
arch/alpha/pseudo_inst.hh:
Give temporary access of these functions to full cpu junk
(this is a hack!)
--HG--
extra : convert_revision :
35499d6bf03b1c21dc918ccc09a6d21719262120
Lisa Hsu [Fri, 7 Nov 2003 06:39:17 +0000 (01:39 -0500)]
Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision :
60b307d827220ba76b607d3f18d4fa00ab3fb1d5
Nathan Binkert [Fri, 7 Nov 2003 06:24:49 +0000 (01:24 -0500)]
save and restore the current bin during reset since we
should continue in whatever bin we were in.
--HG--
extra : convert_revision :
30a891ccb03afa0c1dd0c98942ab3ea5ba800660
Lisa Hsu [Fri, 7 Nov 2003 06:03:26 +0000 (01:03 -0500)]
add a numTicks stat to detailed cpu.
--HG--
extra : convert_revision :
91ba6216d4d309670b2366729b8bcf1ddc4d2198
Lisa Hsu [Fri, 7 Nov 2003 05:14:38 +0000 (00:14 -0500)]
track the idle_thread() function in the kernel, so that we can know if we are idle during a run.
kern/tru64/tru64_system.cc:
autogen for new tracked function
add to fn name map
kern/tru64/tru64_system.hh:
autogen
--HG--
extra : convert_revision :
322d54df3070824a039085dc3742660c82cf750d
Lisa Hsu [Fri, 7 Nov 2003 04:18:47 +0000 (23:18 -0500)]
change the path that i track from two separate paths to one.
kern/tru64/tru64_system.cc:
the automatic generated code...
also, change the way i populate the map. now, instead of tcp_ouput being
the head of its own path, put it under tcp_sosend, which is under sosend.
kern/tru64/tru64_system.hh:
automatically generatd changes
--HG--
extra : convert_revision :
005bac336a3088e32b3b5fcc5e72afd80f7f1934
Nathan Binkert [Fri, 7 Nov 2003 01:34:45 +0000 (20:34 -0500)]
Quick hack to make the simulator exit after the last period.
--HG--
extra : convert_revision :
54c9ae025539aaadf5b2cc79a6ba3e3602938356
Ron Dreslinski [Fri, 7 Nov 2003 01:08:45 +0000 (20:08 -0500)]
"remove SWContext * from map when it is context switched in"
--HG--
extra : convert_revision :
5c58046c36edce07ae8ffc14f1e889e614bfc271
Ron Dreslinski [Thu, 6 Nov 2003 23:47:33 +0000 (18:47 -0500)]
Make sure to serialize the bool that signifies a pending interrupt
--HG--
extra : convert_revision :
c614b3432077ccf8b138549be827edce7e50cd43
Erik Hallnor [Thu, 6 Nov 2003 23:40:08 +0000 (18:40 -0500)]
Merge ehallnor@zizzer:/bk/m5
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5
--HG--
extra : convert_revision :
de8422f1e91f1defabe3a021236c813504bd3cab
Erik Hallnor [Thu, 6 Nov 2003 23:39:26 +0000 (18:39 -0500)]
Various fixes to memory code.
cpu/memtest/memtest.cc:
Disable probes until the work in all cases
util/rundiff:
Comment out Algorithm::Diff since its not needed.
--HG--
extra : convert_revision :
40e76ae8926650986a170a0ba6ef331519aceb19
Steve Raasch [Thu, 6 Nov 2003 17:57:06 +0000 (12:57 -0500)]
Nat's fix for compile bug
base/statistics.hh:
Too many "const"'s
--HG--
extra : convert_revision :
b38303f2e6b415e6bcc520da80e89d99b6976d23
Nathan Binkert [Thu, 6 Nov 2003 07:28:27 +0000 (02:28 -0500)]
better binning of Average stats
base/statistics.hh:
Try to make binning of Average statistics work a little better.
This solution is far from perfect though since we really need
to call set(p.current, p) when the binning takes place.
To fix the binning, we need to have the current value non-binned,
to do that, we make make the current value part of the Params struct.
This means that we can't pass around const Params structs
Maybe we need a binswap callback :/
--HG--
extra : convert_revision :
c2892387dbabe011bdcd6f0d99005c1c50653720
Nathan Binkert [Thu, 6 Nov 2003 05:41:14 +0000 (00:41 -0500)]
Little fixes to make more of the stats reset correctly.
base/statistics.cc:
formatting
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
Make numInsts reset by adding a resetStats function
sim/sim_object.cc:
Register the reset callback in a slightly cleaner way to avoid
potential static member constructor ordering issues
--HG--
extra : convert_revision :
408073b4b0397fbf9dfd9c548a313f1c8c3fc031
Lisa Hsu [Thu, 6 Nov 2003 04:38:57 +0000 (23:38 -0500)]
Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision :
99fc513b9154a180711dc2229dcba488d45fe71d
Lisa Hsu [Thu, 6 Nov 2003 04:38:51 +0000 (23:38 -0500)]
add things to track read and soo_read for specweb.
kern/tru64/tru64_events.cc:
don't need this - it was commented out anyway.
kern/tru64/tru64_system.cc:
generated code from instrum_codegen.pl also, populateMap with the correct orderings.
kern/tru64/tru64_system.hh:
generated code from instrum_codegen.pl
--HG--
extra : convert_revision :
237366a4bae31a07dfc245d090a704afd2bd4833
Nathan Binkert [Thu, 6 Nov 2003 02:17:13 +0000 (21:17 -0500)]
Ok, actually call resetStats on all stats
minor gratuitous cleanup in printAllExtraOutput.
(only create one end iterator)
Fix average stats reset
base/statistics.hh:
Shouldn't reset average stats this way. The current stat value
should stay the same.
sim/sim_object.cc:
Ok, actually call resetStats on all stats
minor gratuitous cleanup in printAllExtraOutput.
(only create one end iterator)
--HG--
extra : convert_revision :
13090ebe490a93757b8eb7d7c6a9697983095e41
Nathan Binkert [Wed, 5 Nov 2003 23:21:18 +0000 (18:21 -0500)]
Add a virtual function resetStats() that any SimObject can inherit
from that will get called any time stats are reset.
sim/sim_object.cc:
sim/sim_object.hh:
add a virtual function resetStats that any simObject can reset
when a statistics reset is initiated
--HG--
extra : convert_revision :
fdad673142f6ff811f84c246d80e5d41e3c9d4d1
Nathan Binkert [Wed, 5 Nov 2003 22:57:41 +0000 (17:57 -0500)]
Fix stats reset
make SIGUSR2 dump and reset stats
Make resetting time work
base/statistics.cc:
Fix statistics reset so that it works again, and correctly
reset bins as well. (The old code wouldn't reset if you didn't
have any bins, and then would actually only reset the first
bin)
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
convert idleCycles/idleFraction into a single Average stat
to make reset work more simply
sim/main.cc:
handle SIGUSR2 to dump and reset stats
(SIGUSR1 only dumps them)
sim/sim_time.cc:
sim/sim_time.hh:
Add support for resetting the time
--HG--
extra : convert_revision :
ea43e03c50c0a4bb826dc0842a8c4fa1a9289e0a
Steve Raasch [Wed, 5 Nov 2003 20:37:21 +0000 (15:37 -0500)]
fix equations
add averaging mechansim for binning
--HG--
extra : convert_revision :
2b84ba97b0a016008937a134461af4d46198843f
Steve Raasch [Wed, 5 Nov 2003 17:51:54 +0000 (12:51 -0500)]
Fix for minor oops found by insure
--HG--
extra : convert_revision :
3b0d4242bcbb188ac649bd96ca876e1475c60214
Steve Raasch [Wed, 5 Nov 2003 16:29:23 +0000 (11:29 -0500)]
Fix initialization bug. No apparent change in external behavior.
--HG--
extra : convert_revision :
b884f2fcba51b36520dd55110d225f83e6f5280a
Nathan Binkert [Wed, 5 Nov 2003 04:45:06 +0000 (23:45 -0500)]
This is M5!
dev/console.cc:
Simplescalar -> m5
--HG--
extra : convert_revision :
c559258c68b5cae6862718240958171e1258ee2b
Ron Dreslinski [Wed, 5 Nov 2003 00:19:41 +0000 (19:19 -0500)]
Properly serialize the clock event
--HG--
extra : convert_revision :
f61234d150cf1cf6ed87d79e71c75f2fa2108b74
Lisa Hsu [Tue, 4 Nov 2003 23:19:40 +0000 (18:19 -0500)]
Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision :
81a644bebf1b9fe11ac767c097c2d457c5698e73
Lisa Hsu [Tue, 4 Nov 2003 23:19:03 +0000 (18:19 -0500)]
Hack to enable perl totaling of standard deviation statistics.
statistics.hh:
same
statistics.cc:
Hack to enable perl totaling.
make FancyDisplay print a total parameter to enable totaling standard deviations for bins after a run is over with perl. currently a total hack.
base/statistics.cc:
Hack to enable perl totaling.
make FancyDisplay print a total parameter to enable totaling standard deviations for bins after a run is over with perl. currently a total hack.
base/statistics.hh:
same
--HG--
extra : convert_revision :
c4087a138543e66acee4e395617ce7fd7e458a39
Nathan Binkert [Tue, 4 Nov 2003 22:43:57 +0000 (17:43 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest
--HG--
extra : convert_revision :
b4e94c075fdb58f6ac66aedf4f6a8f792988ed13
Nathan Binkert [Tue, 4 Nov 2003 22:43:41 +0000 (17:43 -0500)]
A little bit of code here and there to get more access to
what the console output is.
base/circlebuf.hh:
base/circlebuf.cc:
add stuff to spit to an ostream
prepend _ in front of protected member variables
formatting
dev/console.hh:
dev/console.cc:
Add DPRINTF to spit out the lines of console data
dev/console.cc:
little hack to append name() to the file so that we can
easily get multiple output files.
dev/console.hh:
TRACING_ON == 1 not defined(TRACING_ON)
--HG--
extra : convert_revision :
bbe80715fb97ee4c4ed6b484955ef71289f09fc9
Andrew Schultz [Tue, 4 Nov 2003 21:20:35 +0000 (16:20 -0500)]
Added setup-spec and setup-specweb scripts to modify spec, specweb, and
specwebssl run parameters
--HG--
extra : convert_revision :
169b97eba6c1c5694de22957119f532958950dec
Lisa Hsu [Tue, 4 Nov 2003 20:21:04 +0000 (15:21 -0500)]
Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/realclean
--HG--
extra : convert_revision :
32bbe481ee748785f0bcffb0a711017d51c987a0
Lisa Hsu [Tue, 4 Nov 2003 20:20:58 +0000 (15:20 -0500)]
statistics.cc:
on Database::reset(), reset all stats in every bin, not just current one.
base/statistics.cc:
on Database::reset(), reset all stats in every bin, not just current one.
--HG--
extra : convert_revision :
0f3443b36ee00952810818a035c99267da8871d9
Lisa Hsu [Tue, 4 Nov 2003 20:15:24 +0000 (15:15 -0500)]
Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/clean
--HG--
extra : convert_revision :
0074df284e85bc2ebe6ccc2dbe765fabda9ab041
Lisa Hsu [Tue, 4 Nov 2003 20:15:12 +0000 (15:15 -0500)]
Add the ability to track stats in user defined sets of function calls. code can be generated via the base/instrum_codegen.pl script to easily change the functions being tracked. the only thing the user needs to do is add code in tru64System to change how the callerMap is populated.
command line:
m5.* <config file> <args> --server.system:bin=true to track function calls in the server
m5.* <config file> <args> --client.system:bin=true to track function calls in the client
base/statistics.cc:
make an adjustment to the way stats are printed for FS_MEASURE
base/statistics.hh:
add a name() virtual function to GenBin. add a debug printf for activate().
add amake MainBin the default bin when FS_MEASURE.
cpu/exec_context.cc:
initialize swCtx to null upon creation of an xc
cpu/exec_context.hh:
add a SWContext pointer to every execution context.
cpu/simple_cpu/simple_cpu.cc:
process calls and returns for FS_MEASURE
cpu/simple_cpu/simple_cpu.hh:
add this so idleCycles will not be accessed before all stats are constructed
kern/tru64/tru64_events.cc:
add a FnEvent that fires whenever a function we're tracking is called. implement the process() virtual function for it.
kern/tru64/tru64_events.hh:
add FnEvent
kern/tru64/tru64_system.cc:
send bin parameter to System constructor. add bin parameter to Tru64System object. initialize all the FnEvent and MainBin members of Tru64system. also, populate the calling map that indicates whether a function call is on the path we're tracking.
kern/tru64/tru64_system.hh:
modify the Tru64System class to support FS_MEASURE
sim/system.cc:
add a bin parameter to System class. initialize a MainBin to hold the stats for nonPath.
sim/system.hh:
add a map of to match bins to function names. add a swCtx map to map pcb addresses to SWContext *s. Add some supporting functions.
--HG--
extra : convert_revision :
af3eadd798cb2d2aed9b54e1059dcedf244dd526
Nathan Binkert [Tue, 4 Nov 2003 17:48:21 +0000 (12:48 -0500)]
fix type! argh
dev/etherlink.cc:
int -> Tick
--HG--
extra : convert_revision :
33c45ea306e6532b91d84018702b220b25de463e
Steve Reinhardt [Tue, 4 Nov 2003 04:35:05 +0000 (20:35 -0800)]
Automerge
--HG--
extra : convert_revision :
2ca18ecbf04a1de72391073d0a5309fdbbdfefda
Steve Reinhardt [Tue, 4 Nov 2003 04:31:15 +0000 (20:31 -0800)]
Fix bugs in and expand syscall emulation code.
arch/alpha/fake_syscall.cc:
Fix a couple of bugs:
- error return codes weren't making it through due to inadvertent cast to unsigned
- sigreturn broken in not one but two ways
- make all file descriptors look like plain files (not ttys)
Added implementations of setuid, getgid, fcntl, and getdirentries from Dave Oehmke
--HG--
extra : convert_revision :
53d3f13e1b05e3bde9e68ada3774ca39fa4c0d4c
Steve Reinhardt [Tue, 4 Nov 2003 04:26:51 +0000 (20:26 -0800)]
Minor changes to instruction trace output.
arch/alpha/isa_desc:
A few disassembly changes to make it easier to compare with old machine.def traces:
- Make lds prefetches print f31 instead of r31 as dest.
- Don't print mode suffixes on FP if SS_COMPATIBLE_DISASSEMBLY
cpu/exetrace.cc:
Left-justify instruction in field, and increase width by 1.
--HG--
extra : convert_revision :
9ffd56728f1bb772aa3ccda5f027b93d4c3a4135
Andrew Schultz [Mon, 3 Nov 2003 23:40:09 +0000 (18:40 -0500)]
Fix unserialize issues with etherdev (used to leave junk as callbacks which
would segfault)
--HG--
extra : convert_revision :
3b99b507c2df576622b9304215010bbfecedf8f1
Nathan Binkert [Mon, 3 Nov 2003 21:47:53 +0000 (16:47 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest
--HG--
extra : convert_revision :
2029fb26a8c971a791161c9e24dfdc1135f3aaf8
Nathan Binkert [Mon, 3 Nov 2003 21:47:08 +0000 (16:47 -0500)]
Make it so the quiesce instruction is conditionally enabled
arch/alpha/isa_desc:
move the quiesce instruction out of here so I can conditionally
enable it.
arch/alpha/pseudo_inst.cc:
conditionally enable quiesce
arch/alpha/pseudo_inst.hh:
add quiesce
--HG--
extra : convert_revision :
e1c474c4bf8761ff58073785d82b2bec9f632885
Ron Dreslinski [Mon, 3 Nov 2003 21:43:59 +0000 (16:43 -0500)]
Fix sampling cpu switchover of suspended contexts, and make some changes
to sampling config files to allow for different periods of the server and client
systems.
--HG--
extra : convert_revision :
ac4b6679266884d9bc3c20abb2a817f69873cc39
Andrew Schultz [Mon, 3 Nov 2003 21:29:32 +0000 (16:29 -0500)]
Fix etherdev so it serializes txPacket and rxPacket and fixes up the DmaRequest
correctly and remove previous serialization of DmaPhys
--HG--
extra : convert_revision :
65e919ceb573a7554c07947951a74ae321f0f4c0
Andrew Schultz [Mon, 3 Nov 2003 19:33:02 +0000 (14:33 -0500)]
Added serialization for DmaPhys structs and serialize DmaRequest::phys
--HG--
extra : convert_revision :
04f36fc5e6636c08ccb04d244a44017c7d0969ac
Ron Dreslinski [Mon, 3 Nov 2003 17:17:55 +0000 (12:17 -0500)]
Fix unserialize so that it still gos through the entire tree,
but warns if it doesn't find a section. Used to stop if a section
didn't exist, but it's children might still exist.
--HG--
extra : convert_revision :
d3f511b69bec26a80cb004d83c385df3de13f004
Ron Dreslinski [Mon, 3 Nov 2003 16:03:13 +0000 (11:03 -0500)]
Fix segfault from unserialization, add system_sample as a configuration
--HG--
extra : convert_revision :
41604400cb4b334dcffded44b77fa63658d8b096
Steve Reinhardt [Mon, 3 Nov 2003 05:49:15 +0000 (21:49 -0800)]
Print a warning rather than failing if we're unserializing and there's an
object in the config that was not in the checkpointed config.
This code compiles, but I haven't tested it... I'm committing it so Ron
can have it. Should not effect anything that currently works.
base/inifile.cc:
base/inifile.hh:
Add sectionExists() method so you can query whether a section exists
without knowing any of the entry names that would be in it.
sim/serialize.cc:
sim/serialize.hh:
Add Checkpoint::sectionExists() (pass through to IniFile).
--HG--
extra : convert_revision :
905db122afdfe55946ab8493ccac0b1e715bc7c6
Ron Dreslinski [Mon, 3 Nov 2003 04:20:50 +0000 (23:20 -0500)]
Merge zizzer:/m5/Bitkeeper/m5
into zamp.eecs.umich.edu:/amd/brio/y/rdreslin/m5bk/unclean
--HG--
extra : convert_revision :
e142f9ad3528027accf9e03366357c006a9a1857
Nathan Binkert [Mon, 3 Nov 2003 03:12:20 +0000 (22:12 -0500)]
ok, let's get this right
arch/alpha/pseudo_inst.cc:
yes is not a real value, use true
--HG--
extra : convert_revision :
30b998ae6f13641d70c9158777a12b00df8742fe
Nathan Binkert [Mon, 3 Nov 2003 02:58:23 +0000 (21:58 -0500)]
Fix a bug in the pseudo instruction context
arch/alpha/pseudo_inst.cc:
Don't forget the descriptions
--HG--
extra : convert_revision :
f208ea24d5b34283e962916cb4c7dff976406285
Ron Dreslinski [Mon, 3 Nov 2003 01:56:41 +0000 (20:56 -0500)]
Merge zizzer:/m5/Bitkeeper/m5
into zamp.eecs.umich.edu:/amd/brio/y/rdreslin/m5bk/unclean
--HG--
extra : convert_revision :
e388676c83f75c5f19d58b5ed42d41942ff5e2cb
Nathan Binkert [Mon, 3 Nov 2003 01:52:40 +0000 (20:52 -0500)]
Add the option to ignore some of the pseudo instructions
--HG--
extra : convert_revision :
2010782749ca9c5dd029f71480956b8a1fa96394
Nathan Binkert [Mon, 3 Nov 2003 01:43:39 +0000 (20:43 -0500)]
Move the m5 pseudo instructions into their own file
arch/alpha/isa_desc:
Move the pseudo instructions out of the isa_desc, into their own
file and call out to them when they're to be accessed
sim/sim_events.cc:
sim/sim_events.hh:
sim/sim_exit.hh:
move SimExit to sim_exit.cc
--HG--
extra : convert_revision :
1c393adb1c18bd0fef065057d7f4e9cf60ac4197