gem5.git
20 years agoSweeping change in the stats package....again...
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

20 years agoRemove mostly-broken binning stuff from "get"
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

20 years agoMerge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
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

20 years agoFetch-loss now uses the stats package
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

20 years agoInstead of keeping track of the fraction of time that we're
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

20 years agomove setStatus into the .cc file
Nathan Binkert [Mon, 8 Dec 2003 18:15:18 +0000 (13:15 -0500)]
move setStatus into the .cc file

--HG--
extra : convert_revision : 9ccf885274d72ea3151a0db76b580dd51763edab

20 years agoremote_gdb.cc:
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

20 years agoMinor fixes to the Segmented and Seznec IQ models
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

20 years agoFormatting & doxygen docs for new syscall emulation code.
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

20 years agoMerge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
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

20 years agoRestructuring of LiveProcess etc. to support multiple emulated OS syscall
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

20 years agoChange the way writebacks are handled to make probing easier. Minor fixes to get...
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

20 years agoExtract documentation for all classes.
Erik Hallnor [Mon, 24 Nov 2003 20:46:39 +0000 (15:46 -0500)]
Extract documentation for all classes.

--HG--
extra : convert_revision : 17428b19a2230199a8ac79b7d8f727d58d3428ac

20 years agoget rid of the errors from simple-test1 and test1-6
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

20 years agoGo Blue!!!!
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

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
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

20 years agoWe only need to choose that we do want binning, or we don't.
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

20 years agoMerge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5
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

20 years agofull_cpu.cc:
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

20 years agoPass all the related information (the memreq) to the findBlock call. Working towards...
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

20 years agoPass MemReqPtr by reference.
Erik Hallnor [Wed, 19 Nov 2003 21:40:05 +0000 (16:40 -0500)]
Pass MemReqPtr by reference.

--HG--
extra : convert_revision : 141d50bb0bb010cee38231ec7b7289fa834b37d5

20 years agoMove some MSHR typedefs into the class, transition from MSHRblah to MSHR::blah.
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

20 years agomake the name consistent with what it does.
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

20 years agoMake it so that we create a directory for each checkpoint so that
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

20 years agostatistics.cc:
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

20 years agoin the case where we don't have any bins, we don't want to panic
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

20 years agoMerge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
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

20 years agoChange setup scheme to split base configurations from configuration options.
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

20 years agoMerge ehallnor@zizzer:/bk/m5
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

20 years agoCreate a compressed cache if there is a compressed bus or data should be stored compr...
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

20 years agoAdd config for simple purely functional simulation (no caches).
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

20 years agoRewrite getdirentries to replace SS-derived version.
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

20 years agoMinor enhancements to rundiff script.
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

20 years agoSetup to build with gcc 3.3.2.
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

20 years agoISCA hack is for FULL_SYSTEM only.
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

20 years agoMerge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
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

20 years agoupdates for the new stats format
Steve Raasch [Fri, 7 Nov 2003 22:45:59 +0000 (17:45 -0500)]
updates for the new stats format

--HG--
extra : convert_revision : 7da435e2369a0ab4647f033e9ce16125ac7b9302

20 years agoIt's important that there be white-space between each element
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

20 years agoadd a couple of hacks to get thigns going for ISCA
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

20 years agoMerge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
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

20 years agosave and restore the current bin during reset since we
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

20 years agoadd a numTicks stat to detailed cpu.
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

20 years agotrack the idle_thread() function in the kernel, so that we can know if we are idle...
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

20 years agochange the path that i track from two separate paths to one.
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

20 years agoQuick hack to make the simulator exit after the last period.
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

20 years ago"remove SWContext * from map when it is context switched in"
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

20 years agoMake sure to serialize the bool that signifies a pending interrupt
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

20 years agoMerge ehallnor@zizzer:/bk/m5
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

20 years agoVarious fixes to memory code.
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

20 years agoNat's fix for compile bug
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

20 years agobetter binning of Average stats
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

20 years agoLittle fixes to make more of the stats reset correctly.
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

20 years agoMerge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
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

20 years agoadd things to track read and soo_read for specweb.
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

20 years agoOk, actually call resetStats on all stats
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

20 years agoAdd a virtual function resetStats() that any SimObject can inherit
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

20 years agoFix stats reset
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

20 years agofix equations
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

20 years agoFix for minor oops found by insure
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

20 years agoFix initialization bug. No apparent change in external behavior.
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

20 years agoThis is M5!
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

20 years agoProperly serialize the clock event
Ron Dreslinski [Wed, 5 Nov 2003 00:19:41 +0000 (19:19 -0500)]
Properly serialize the clock event

--HG--
extra : convert_revision : f61234d150cf1cf6ed87d79e71c75f2fa2108b74

20 years agoMerge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
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

20 years agoHack to enable perl totaling of standard deviation statistics.
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

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
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

20 years agoA little bit of code here and there to get more access to
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

20 years agoAdded setup-spec and setup-specweb scripts to modify spec, specweb, and
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

20 years agoMerge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/realclean
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

20 years agostatistics.cc:
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

20 years agoMerge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/clean
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

20 years agoAdd the ability to track stats in user defined sets of function calls. code can...
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

20 years agofix type! argh
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

20 years agoAutomerge
Steve Reinhardt [Tue, 4 Nov 2003 04:35:05 +0000 (20:35 -0800)]
Automerge

--HG--
extra : convert_revision : 2ca18ecbf04a1de72391073d0a5309fdbbdfefda

20 years agoFix bugs in and expand syscall emulation code.
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

20 years agoMinor changes to instruction trace output.
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

20 years agoFix unserialize issues with etherdev (used to leave junk as callbacks which
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

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
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

20 years agoMake it so the quiesce instruction is conditionally enabled
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

20 years agoFix sampling cpu switchover of suspended contexts, and make some changes
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

20 years agoFix etherdev so it serializes txPacket and rxPacket and fixes up the DmaRequest
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

20 years agoAdded serialization for DmaPhys structs and serialize DmaRequest::phys
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

20 years agoFix unserialize so that it still gos through the entire tree,
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

20 years agoFix segfault from unserialization, add system_sample as a configuration
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

20 years agoPrint a warning rather than failing if we're unserializing and there's an
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

20 years agoMerge zizzer:/m5/Bitkeeper/m5
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

20 years agook, let's get this right
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

20 years agoFix a bug in the pseudo instruction context
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

20 years agoMerge zizzer:/m5/Bitkeeper/m5
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

20 years agoAdd the option to ignore some of the pseudo instructions
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

20 years agoMove the m5 pseudo instructions into their own file
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

20 years agoMerge zizzer:/m5/Bitkeeper/m5
Ron Dreslinski [Mon, 3 Nov 2003 00:38:51 +0000 (19:38 -0500)]
Merge zizzer:/m5/Bitkeeper/m5
into zamp.eecs.umich.edu:/amd/brio/y/rdreslin/m5bk/unclean

--HG--
extra : convert_revision : 40b955025db858628804bca3d0a155813ea81bf7

20 years agoGeneral fixes for Sampling CPU in full system mode, and serialization of sampling CPU
Ron Dreslinski [Mon, 3 Nov 2003 00:38:22 +0000 (19:38 -0500)]
General fixes for Sampling CPU in full system mode, and serialization of sampling CPU

cpu/intr_control.cc:
    Fix the reference to the cpu, to look up which cpu is being used
    In sampling mode can't use an absolute pointer to the cpu, use the
    exeContexts vector
cpu/intr_control.hh:
    Add two new functions to simplify MP interrupts, fix it for sampling CPU model

--HG--
extra : convert_revision : a69cdbb81e6aefa3fd5385416713c689300bbea8

20 years agoMerge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
Steve Raasch [Mon, 3 Nov 2003 00:29:28 +0000 (19:29 -0500)]
Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/y/sraasch/head

--HG--
extra : convert_revision : f63c01cd6e002028879925e4c2c051de038f5e44

20 years agoAdd binning support
Steve Raasch [Mon, 3 Nov 2003 00:29:14 +0000 (19:29 -0500)]
Add binning support

--HG--
extra : convert_revision : edb922d3a4422cedc5c0c7efbac7124b5184165f

20 years agoImplement more m5 pseduo opcodes:
Nathan Binkert [Sun, 2 Nov 2003 23:02:58 +0000 (18:02 -0500)]
Implement more m5 pseduo opcodes:
resetstats
dumpstats
dumpresetstats
m5checkpoint

Lots of cleanup of serialization and stats dumping/resetting to
work with these new instructions

arch/alpha/isa_desc:
    Implement more m5 pseduo opcodes:
    resetstats
    dumpstats
    dumpresetstats
    m5checkpoint

    All of these functions take two optional parameters, the first is a delay,
    and the second is a period.  The delay tells the simulator to wait the
    specified number of nanoseconds before triggering the event, the period
    tells the simulator to repeat the event with a specified frequency
base/statistics.cc:
base/statistics.hh:
    regReset RegResetCallback
dev/disk_image.cc:
    serializeFilename -> CheckpointFile()
sim/debug.cc:
    Move this debugging statement to sim_stats.cc
sim/eventq.cc:
    Don't AutoDelete an event if it is scheduled since the process()
    function could potentially schedule the event again.
sim/main.cc:
    DumpStatsEvent is now Statistics::SetupEvent(Dump, curTick)
sim/serialize.cc:
    Change the serialize event so that it's possible to cause the
    event to repeat.  Also make the priority such that the event
    happens just before the simulator would exit if both events
    were scheduled for the same cycle.

    get rid of the serializeFilename variable and provide a CheckpointFile()
    function.  This function takes a basename that is set in the
    configuration, and appends the current cycle to the name so that
    multiple checkpoints can be dumped from the same simulation.

    Also, don't exit the simulation when a checkpoint file is dumped.
sim/serialize.hh:
    serializeFilename -> CheckpointFile()
    SetupCheckpoint function to tell the simulator to prepare
    to checkpoint at a certain time with a certain period
sim/sim_events.cc:
    DumpStatsEvent stuff gets move to sim_stats.(cc|hh)
    The context stuff gets moved into the already existing
    stats context in stat_context.cc
sim/sim_events.hh:
    DumpStatsEvent stuff gets move to sim_stats.(cc|hh)
sim/universe.cc:
    Provide some simple functions for converting times into
    ticks.  These use floating point math to get as close as
    possible to the real values.  Multipliers are set up ahead
    of time

--HG--
extra : convert_revision : d06ef26a9237529a1e5060cb1ac2dcc04d4ec252

20 years agoPrevent make from being smart about sccs
Nathan Binkert [Sun, 2 Nov 2003 18:05:14 +0000 (13:05 -0500)]
Prevent make from being smart about sccs

--HG--
extra : convert_revision : d9fdb32c87c8511aace91850867fc00d00855fe6

20 years agoSimExit takes a time now
Nathan Binkert [Sun, 2 Nov 2003 18:01:08 +0000 (13:01 -0500)]
SimExit takes a time now

arch/alpha/isa_desc:
    regen

--HG--
extra : convert_revision : a9da9d2a5fc8a0414491e437747cde48dfb61a20

20 years agoIf a filter isn't specified, don't try to do any filtering
Nathan Binkert [Sun, 2 Nov 2003 07:13:04 +0000 (02:13 -0500)]
If a filter isn't specified, don't try to do any filtering
If pcap_lookupnet fails, just assume the netmask is 0xffffff00
that's all we really wanted from it anyway.

--HG--
extra : convert_revision : ac0a390ddb7a6b0a4e4c6d2885bfa7bd059faf36

20 years agodeprecate the m5exit instruction and rename it to m5exit_old
Nathan Binkert [Sun, 2 Nov 2003 07:07:31 +0000 (02:07 -0500)]
deprecate the m5exit instruction and rename it to m5exit_old
Implement a new m5exit instruction with an optional delay

arch/alpha/isa_desc:
    move m5exit to m5exit old.  The old version of the
    instruction is now deprecated

    Implement the new exit instruction with the optional delay
sim/sim_events.cc:
sim/sim_events.hh:
    Make SimExit take a cycle
sim/universe.cc:
    provide ticksPerMS, ticksPerUS, and ticksPerNS so we don't
    have to do math during the cycle

--HG--
extra : convert_revision : e2ed47a2e5cfcd57c82086c6fcb4a28bf801c214

20 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Sun, 2 Nov 2003 06:09:10 +0000 (01:09 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : 7fd03e2b9f776bf035ad8c758aaf349c35cee47f