Commit graph

8715 commits

Author SHA1 Message Date
Nathan Binkert
492fa2ae5e Get the console code to compile correctly
Add support for some thigns that M5 needs
Make this better support Tru64 v5.1

console/Makefile:
    I couldn't figure out the old build system since I was missing
    a bunch of tools at the time, so I kinda rewrote it.
console/console.c:
    Get the includes right, and make things compile
    little bit of cleanup along the way
console/paljtokern.s:
    formatting junk
console/printf.c:
    Formatting
    get const right
h/lib.h:
    fiddle with the includes that we need
console/console.c:
    Get the BOOTDEVICE_NAME right
    Add a bit of support for grabbing console environment variables
2003-11-14 12:32:52 -05:00
Lisa Hsu
b8612cbda3 Import changeset 2003-11-14 10:52:42 -05:00
Nathan Binkert
123d0294b5 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
2003-11-14 01:19:16 -05:00
Nathan Binkert
0bd909277d 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
2003-11-12 15:23:31 -05:00
Nathan Binkert
74aaf2401c in the case where we don't have any bins, we don't want to panic
--HG--
extra : convert_revision : e9056ca020d0f3db388b31a074b03e4d521f8705
2003-11-12 14:59:58 -05:00
Steve Reinhardt
94f98b43b3 Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5
--HG--
extra : convert_revision : bb9bba89ad0b25b0a4748bf46b714e2259321ad9
2003-11-12 10:36:12 -08:00
Steve Reinhardt
166bb3fff4 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
2003-11-12 10:35:48 -08:00
Erik Hallnor
790d1da2fa Merge ehallnor@zizzer:/bk/m5
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5

--HG--
extra : convert_revision : 7835ada99c5ff47a9013d2827311a24e1447ac16
2003-11-12 11:59:04 -05:00
Erik Hallnor
d41cf8bd24 Create a compressed cache if there is a compressed bus or data should be stored compressed
--HG--
extra : convert_revision : eade8951bed25a222e5e1ee370d431ec5c0a200d
2003-11-12 11:58:56 -05:00
Steve Reinhardt
bfed4de8f4 Add config for simple purely functional simulation (no caches).
--HG--
extra : convert_revision : e2466d051e67d76e841416deeb95974c8f9516fe
2003-11-12 08:41:09 -08:00
Steve Reinhardt
0a7f82da7d Rewrite getdirentries to replace SS-derived version.
--HG--
extra : convert_revision : 72eced315bbb331d3068279e60f1f0a390eb687a
2003-11-12 08:40:32 -08:00
Steve Reinhardt
7651e19cd1 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
2003-11-09 20:36:54 -08:00
Steve Reinhardt
ebaecd1b6c Setup to build with gcc 3.3.2.
--HG--
extra : convert_revision : 27e73ded6c1a2089427391bfdf1afa1f020ba14f
2003-11-09 10:39:44 -08:00
Steve Reinhardt
ba0672a2e2 ISCA hack is for FULL_SYSTEM only.
--HG--
extra : convert_revision : a90fec583e6147bda8023da7f405aeecdb469128
2003-11-09 10:03:33 -08:00
Steve Raasch
e8a682c3c4 Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/y/sraasch/new_head

--HG--
extra : convert_revision : 05dbe5ff1097b16430b647e599e56c556683c026
2003-11-07 17:49:50 -05:00
Steve Raasch
4ff3843027 updates for the new stats format
--HG--
extra : convert_revision : 7da435e2369a0ab4647f033e9ce16125ac7b9302
2003-11-07 17:45:59 -05:00
Steve Raasch
541598bc6f 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
2003-11-07 08:35:55 -05:00
Nathan Binkert
7f7dcf4e1f 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
2003-11-07 05:06:22 -05:00
Lisa Hsu
22679d3da8 Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision : 60b307d827220ba76b607d3f18d4fa00ab3fb1d5
2003-11-07 01:39:17 -05:00
Nathan Binkert
40820042f1 save and restore the current bin during reset since we
should continue in whatever bin we were in.

--HG--
extra : convert_revision : 30a891ccb03afa0c1dd0c98942ab3ea5ba800660
2003-11-07 01:24:49 -05:00
Lisa Hsu
c5da35e8d5 add a numTicks stat to detailed cpu.
--HG--
extra : convert_revision : 91ba6216d4d309670b2366729b8bcf1ddc4d2198
2003-11-07 01:03:26 -05:00
Lisa Hsu
a03221b6ca 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
2003-11-07 00:14:38 -05:00
Lisa Hsu
3a99657c8f 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
2003-11-06 23:18:47 -05:00
Nathan Binkert
7ec4f7d211 Quick hack to make the simulator exit after the last period.
--HG--
extra : convert_revision : 54c9ae025539aaadf5b2cc79a6ba3e3602938356
2003-11-06 20:34:45 -05:00
Ron Dreslinski
7c01c2e210 "remove SWContext * from map when it is context switched in"
--HG--
extra : convert_revision : 5c58046c36edce07ae8ffc14f1e889e614bfc271
2003-11-06 20:08:45 -05:00
Ron Dreslinski
5138fa008d Make sure to serialize the bool that signifies a pending interrupt
--HG--
extra : convert_revision : c614b3432077ccf8b138549be827edce7e50cd43
2003-11-06 18:47:33 -05:00
Erik Hallnor
850a6a8eff Merge ehallnor@zizzer:/bk/m5
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5

--HG--
extra : convert_revision : de8422f1e91f1defabe3a021236c813504bd3cab
2003-11-06 18:40:08 -05:00
Erik Hallnor
aead4c315b 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
2003-11-06 18:39:26 -05:00
Steve Raasch
9915bd17c2 Nat's fix for compile bug
base/statistics.hh:
    Too many "const"'s

--HG--
extra : convert_revision : b38303f2e6b415e6bcc520da80e89d99b6976d23
2003-11-06 12:57:06 -05:00
Nathan Binkert
07d56ae7be 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
2003-11-06 02:28:27 -05:00
Nathan Binkert
655e9ef3de 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
2003-11-06 00:41:14 -05:00
Lisa Hsu
22658f2098 Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision : 99fc513b9154a180711dc2229dcba488d45fe71d
2003-11-05 23:38:57 -05:00
Lisa Hsu
9020491833 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
2003-11-05 23:38:51 -05:00
Nathan Binkert
f2881c752e 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
2003-11-05 21:17:13 -05:00
Nathan Binkert
b064b8a6fd 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
2003-11-05 18:21:18 -05:00
Nathan Binkert
9471a4d20f 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
2003-11-05 17:57:41 -05:00
Steve Raasch
74fd8b1ad1 fix equations
add averaging mechansim for binning

--HG--
extra : convert_revision : 2b84ba97b0a016008937a134461af4d46198843f
2003-11-05 15:37:21 -05:00
Steve Raasch
3dc30283cf Fix for minor oops found by insure
--HG--
extra : convert_revision : 3b0d4242bcbb188ac649bd96ca876e1475c60214
2003-11-05 12:51:54 -05:00
Steve Raasch
7297f76bcf Fix initialization bug. No apparent change in external behavior.
--HG--
extra : convert_revision : b884f2fcba51b36520dd55110d225f83e6f5280a
2003-11-05 11:29:23 -05:00
Nathan Binkert
f2b6ecdfeb This is M5!
dev/console.cc:
    Simplescalar -> m5

--HG--
extra : convert_revision : c559258c68b5cae6862718240958171e1258ee2b
2003-11-04 23:45:06 -05:00
Ron Dreslinski
f6b71f1e98 Properly serialize the clock event
--HG--
extra : convert_revision : f61234d150cf1cf6ed87d79e71c75f2fa2108b74
2003-11-04 19:19:41 -05:00
Lisa Hsu
d7b25c8022 Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/m5
--HG--
extra : convert_revision : 81a644bebf1b9fe11ac767c097c2d457c5698e73
2003-11-04 18:19:40 -05:00
Lisa Hsu
16d0b2f85a 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
2003-11-04 18:19:03 -05:00
Nathan Binkert
293ee75117 Merge zizzer.eecs.umich.edu:/bk/m5
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : b4e94c075fdb58f6ac66aedf4f6a8f792988ed13
2003-11-04 17:43:57 -05:00
Nathan Binkert
247984bc22 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
2003-11-04 17:43:41 -05:00
Andrew Schultz
ab799a6830 Added setup-spec and setup-specweb scripts to modify spec, specweb, and
specwebssl run parameters

--HG--
extra : convert_revision : 169b97eba6c1c5694de22957119f532958950dec
2003-11-04 16:20:35 -05:00
Lisa Hsu
94edf2de3f Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/realclean
--HG--
extra : convert_revision : 32bbe481ee748785f0bcffb0a711017d51c987a0
2003-11-04 15:21:04 -05:00
Lisa Hsu
8834d91f21 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
2003-11-04 15:20:58 -05:00
Lisa Hsu
553df008cf Merge zizzer:/bk/m5 into zower.eecs.umich.edu:/z/hsul/bk/clean
--HG--
extra : convert_revision : 0074df284e85bc2ebe6ccc2dbe765fabda9ab041
2003-11-04 15:15:24 -05:00
Lisa Hsu
921b1ee87b 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
2003-11-04 15:15:12 -05:00