Age | Commit message (Collapse) | Author |
|
--HG--
extra : convert_revision : 32bbe481ee748785f0bcffb0a711017d51c987a0
|
|
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
|
|
--HG--
extra : convert_revision : 0074df284e85bc2ebe6ccc2dbe765fabda9ab041
|
|
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
|
|
--HG--
extra : convert_revision : 2ca18ecbf04a1de72391073d0a5309fdbbdfefda
|
|
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
|
|
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
|
|
add enum to Bin::VectorBin
base/statistics.hh:
add enum to Bin::VectorBin
--HG--
extra : convert_revision : a05aef30ca85bf5c0d1f5155e1dff3fb34fd7777
|
|
base/misc.cc:
Add curTick to panic and warn messages.
Reformat fatal message a bit for consistency.
--HG--
extra : convert_revision : 171da2fe6ca5e25982058ee1af67473292659103
|
|
into zizzer.eecs.umich.edu:/.automount/zans/z/binkertn/research/m5/latest
--HG--
extra : convert_revision : 3134761fa4c572a672558dfb6f9252aaef7b7062
|
|
base/str.cc:
Make some fixes for the to_number function.
Fix overflow calculation for maximum decimal value.
(Note: minimum decimal value for signed numbers does not
work correctly, e.g. it will overflow on -128 for a signed char
though -127 will work)
Fix overflow calculation for hex values being converted into
signed types
Fix up the debugging stuff a little to make sure the values are
always printed as numbers.
test/strnumtest.cc:
using namespace std for g++ 3
--HG--
extra : convert_revision : b00bb1296c85c3d64d8864283c9374e1563bfa31
|
|
visible stat type (NoBin or BinType). this way a little #define does it all for you.
statistics.hh:
add #includes needed for CeilPow2
statistics.cc:
rm unneeded #includes for CeilPow2
base/statistics.cc:
rm unneeded #includes for CeilPow2
base/statistics.hh:
add #includes needed for CeilPow2
--HG--
extra : convert_revision : 818028b276e97735a8b8d21d6514f41a80350514
|
|
oops - remove a debug printf
base/statistics.hh:
oops - remove a debug printf
--HG--
extra : convert_revision : a6ecab93f79ce0a5cb6ff129750d8f6a2de8d38c
|
|
been better or were just plain wrong.
statistics.hh:
fix a bug in binning that made bins a fixed size no matter what. add GenBin class that is public but not templatized.
statistics.cc:
change map to statMap so others can use the map<> token without needing ::. also, add a level of GenBin that is public base class for StatBin<>.
base/statistics.cc:
change map to statMap so others can use the map<> token without needing ::. also, add a level of GenBin that is public base class for StatBin<>.
base/statistics.hh:
fix a bug in binning that made bins a fixed size no matter what. add GenBin class that is public but not templatized.
--HG--
extra : convert_revision : 6976a891e414c9515cc5a613157f7cb86ef89008
|
|
--HG--
extra : convert_revision : ff6c93ee2f4e6aeb5a824958c52f62d6c2a1cdfd
|
|
base/pollevent.hh:
Add queued() member function to indicate if this event has been queued
--HG--
extra : convert_revision : bebb04dc8e10c1043e55e0036806bd1ca4fec167
|
|
base/predictor.hh:
base/sat_counter.hh:
sim/param.hh:
Get rid of spurious references to stat_sdb_t.
--HG--
extra : convert_revision : 0018a940c69b6e31b85fd85354b9d5ce2fd0aa6f
|
|
decfine functions using type defs ala "RegFile" instead of "AlphaISA::RegFile".
base/inifile.hh:
Document findAppend
--HG--
extra : convert_revision : ab5047590b3ca2a9126b75351e4902d300b5b5ad
|
|
default=. In the append= case, when looking up an entry, it also
looks in the section named by the append= for something to append
to the entry
--HG--
extra : convert_revision : b51915094ad3ca151d7f241c29e19b6b29d3a3c0
|
|
search path
--HG--
extra : convert_revision : 9a6bceb931613b718bf5a561b354ba9ccb847a78
|
|
of CPUs that get switched round-robin (though currently we're only shooting for
two CPUs and one switch event, and even that doesn't quite work yet). Registration
of ExecContexts with System/Process object factored out so we can create two CPUs
but only register one of them at a time. Also worked at making behavior and naming
in System and Process objects more consistent.
arch/alpha/ev5.cc:
Rename ipr_init to initIPRs and get rid of unused mem arg.
arch/alpha/fake_syscall.cc:
Process:numCpus is now a function (not a data member).
base/remote_gdb.hh:
Support for ExecContext switching.
cpu/base_cpu.cc:
cpu/base_cpu.hh:
cpu/exec_context.cc:
cpu/exec_context.hh:
cpu/simple_cpu/simple_cpu.hh:
Support for ExecContext switching.
Renamed contexts array to execContexts to be consistent with Process.
CPU ID now auto-assigned by system object.
cpu/simple_cpu/simple_cpu.cc:
Support for ExecContext switching.
Renamed contexts array to execContexts to be consistent with Process.
CPU ID now auto-assigned by system object.
Cleaned up MP full-system initialization a bit.
dev/alpha_console.cc:
Renamed xcvec array to execContexts to be consistent with Process.
kern/tru64/tru64_system.cc:
kern/tru64/tru64_system.hh:
Support for ExecContext switching.
CPU ID now auto-assigned by system object.
sim/prog.cc:
sim/prog.hh:
Support for ExecContext switching.
Process:numCpus is now a function (not a data member).
sim/system.cc:
sim/system.hh:
Support for ExecContext switching.
Renamed xcvec array to execContexts to be consistent with Process.
--HG--
extra : convert_revision : 79649cffad5bf3e83de8df44236941907926d791
|
|
base/statistics.cc:
Small fix: don't exit early out of dist when nozero is set and a zero val is found.
--HG--
extra : convert_revision : 95ba3328c8a79f05f4c821d99071dba10f013ad6
|
|
--HG--
extra : convert_revision : b7e19ff42ddd9a21571e086c11e143d9290e0e38
|
|
change printf to be printed only when something is binned so regression doesn't freak out.
base/statistics.cc:
change printf to be printed only when something is binned so regression doesn't freak out.
--HG--
extra : convert_revision : cb60128fc3ab605aa7e915c7c7512cf93b156c96
|
|
forgot to doxygen comment binned()
base/statistics.hh:
forgot to doxygen comment binned()
--HG--
extra : convert_revision : 7e414a3291e49b7b92bcbfec18470c3ec8671a35
|
|
--HG--
extra : convert_revision : 8658302b64207390b03f9fe133ad722a1417e022
|
|
--HG--
extra : convert_revision : d14536880d6f55d4304c0bab1fa08a5121bd1846
|
|
--HG--
extra : convert_revision : 438c94c90bfb3caffec461ad2c14b266cdf61494
|
|
Added doxygen comments to inifile.hh.
Updated initest. Some other minor cleanup.
base/inifile.cc:
Add support for '+=' append operation.
Factor common code from IniFile::load() and IniFile::add() into new Section::add().
Rename ConfigTable to SectionTable (more descriptive).
Fix bug in Section::dump().
base/inifile.hh:
Add doxygen comments.
Add support for '+=' append operation.
Factor common code from IniFile::load() and IniFile::add() into new Section::add().
Rename ConfigTable to SectionTable (more descriptive).
test/Makefile:
initest needs cprintf.o now.
test/foo.ini:
Add test of '+=' operator.
test/initest.cc:
Bring this up-to-date. Steal main loop from main.cc so we can test
multiple .ini files and command-line assignments too.
--HG--
extra : convert_revision : 982521677fbf464e93aa93798ff7d9611826f17c
|
|
same - bin printing
statistics.cc:
printing of bins! now all the nice binning functionality is actually useful cuz you can see the data it so nicely took. this prints out only the individual bin values. totals to come.
statistics.hh:
add a binned() function to each stat so that at print time, we can know if it's binned in order to print it right.
base/statistics.hh:
add a binned() function to each stat so that at print time, we can know if it's binned in order to print it right.
base/statistics.cc:
printing of bins! now all the nice binning functionality is actually useful cuz you can see the data it so nicely took. this prints out only the individual bin values. totals to come.
base/statistics.hh:
same - bin printing
--HG--
extra : convert_revision : 09df9aae62b0e522230ee6bedcb51079346735a4
|
|
fix up some very ambiguous doxygen comments about Formulas
base/statistics.hh:
fix up some very ambiguous comments about Formulas
--HG--
extra : convert_revision : ad8d9579fd1933397590c78111bec7c0d19b0e14
|
|
--HG--
extra : convert_revision : d639282e403cb085c452223a76cec31933a529aa
|
|
change VectorDistProxy name to DistProxy - to be more consistent with other proxy namings.
base/statistics.hh:
change VectorDistProxy name to DistProxy - to be more consistent with other proxy namings.
--HG--
extra : convert_revision : c470c93cf598506be56312db52f6c528c213a149
|
|
base/statistics.cc:
base/statistics.hh:
Implement a reset for for the statistics package.
This will cause all stats to be set to their default value.
Only the currently enabled bin will be reset.
test/Makefile:
Make tests work again now that we're naming include dirs
explicitly
test/stattest.cc:
test reset
--HG--
extra : convert_revision : 8d21cedf6ee91ed0a2412042ea5cb12f79b90eb3
|
|
base/callback.hh:
Don't remove a callback when it is processed.
Document the callback class
--HG--
extra : convert_revision : 9d15500434fe0e5d623c624aac86976708adf0eb
|
|
Mostly vestiges of Dave's long-gone instruction prefetching stuff.
arch/alpha/isa_traits.hh:
Delete unused extractInstructionPrefetchTarget().
base/inifile.cc:
Delete '#if 0' code
cpu/base_cpu.hh:
Delete unused filterThisInstructionPrefetch() function.
cpu/exetrace.hh:
Delete '#if 0' code (obsolete flags).
--HG--
extra : convert_revision : c8317f56ba0a0e568daa785825ee938584987bed
|
|
base/statistics.hh:
Document the friend class because doxygen can't handle the template instantiation.
kern/tru64/dump_mbuf.cc:
kern/tru64/dump_mbuf.hh:
kern/tru64/printf.cc:
kern/tru64/printf.hh:
kern/tru64/tru64_events.cc:
Change namespace from Tru64 to tru64 (There is a class Tru64, and it was confusing doxygen).
--HG--
extra : convert_revision : 9644b1324814952cb6a2d98fd2ab4d07f0860b45
|
|
--HG--
extra : convert_revision : 1c2faba65e1112f0972bae330cbde4a563429b73
|
|
Mainly removing whitespace at the end of lines.
This will reduce future diffs/conflicts.
Also adding a space after if, while, and for
This was all accomplished with:
#!/usr/bin/perl -pi~
s/[ ]+$//; # there is a space and a tab in the brackets
s/if\(/if (/g;
s/for\(/for (/g;
s/while\(/while (/g;
arch/alpha/alpha_memory.cc:
arch/alpha/alpha_memory.hh:
arch/alpha/arguments.hh:
arch/alpha/ev5.cc:
arch/alpha/fake_syscall.cc:
arch/alpha/isa_traits.hh:
arch/alpha/vtophys.cc:
base/cprintf.cc:
base/cprintf.hh:
base/cprintf_formats.hh:
base/dbl_list.hh:
base/fast_alloc.cc:
base/fast_alloc.hh:
base/hybrid_pred.cc:
base/hybrid_pred.hh:
base/inet.cc:
base/inifile.cc:
base/intmath.cc:
base/intmath.hh:
base/misc.cc:
base/mod_num.hh:
base/pollevent.cc:
base/random.cc:
base/random.hh:
base/range.hh:
base/refcnt.hh:
base/remote_gdb.cc:
base/remote_gdb.hh:
base/res_list.hh:
base/sat_counter.cc:
base/sat_counter.hh:
base/sched_list.hh:
base/compression/lzss_compression.cc:
base/compression/lzss_compression.hh:
base/compression/null_compression.hh:
base/loader/coff_sym.h:
base/loader/coff_symconst.h:
base/loader/ecoff_object.cc:
base/loader/object_file.cc:
base/loader/object_file.hh:
base/loader/symtab.cc:
base/loader/symtab.hh:
base/socket.cc:
base/statistics.cc:
base/statistics.hh:
base/str.cc:
base/str.hh:
base/trace.cc:
base/trace.hh:
cpu/base_cpu.cc:
cpu/base_cpu.hh:
cpu/exec_context.hh:
cpu/exetrace.cc:
cpu/intr_control.hh:
cpu/pc_event.cc:
cpu/pc_event.hh:
cpu/static_inst.hh:
cpu/full_cpu/op_class.hh:
cpu/full_cpu/smt.hh:
cpu/memtest/memtest.cc:
cpu/memtest/memtest.hh:
cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
dev/alpha_access.h:
dev/alpha_console.cc:
dev/alpha_console.hh:
dev/console.cc:
dev/console.hh:
dev/disk_image.cc:
dev/disk_image.hh:
dev/etherbus.cc:
dev/etherdump.cc:
dev/etherint.cc:
dev/etherlink.cc:
dev/etherlink.hh:
dev/ethertap.cc:
dev/pcireg.h:
docs/stl.hh:
kern/tru64/dump_mbuf.cc:
kern/tru64/printf.cc:
kern/tru64/tru64_events.cc:
kern/tru64/tru64_system.cc:
kern/tru64/tru64_system.hh:
sim/debug.cc:
sim/eventq.cc:
sim/eventq.hh:
sim/host.hh:
sim/main.cc:
sim/param.cc:
sim/param.hh:
sim/prog.cc:
sim/serialize.cc:
sim/serialize.hh:
sim/sim_events.cc:
sim/sim_object.cc:
sim/sim_time.cc:
sim/sim_time.hh:
sim/system.cc:
test/bitvectest.cc:
test/circletest.cc:
test/initest.cc:
test/lru_test.cc:
test/nmtest.cc:
test/offtest.cc:
test/sized_test.cc:
test/stattest.cc:
test/symtest.cc:
util/tap/tap.cc:
util/term/term.c:
formatting fixes
--HG--
extra : convert_revision : 01e6dbc9615c5d0e923502b8410a416c0434cdf6
|
|
into zans.eecs.umich.edu:/z/binkertn/research/m5/latest
--HG--
extra : convert_revision : d5ba96b559be93774e82692099675b6d1f525221
|
|
base/intmath.hh:
Don't return -1 in FloorLog2. That's wierd. Assert instead.
If you care about this, you should check for zero yourself.
Create seprate versions for uint32_t, uint64_t, int32_t, and
int64_t. signed vs unsigned so that error checking can be done
correctly. 32 vs 64 for speed.
Finally, fix a little bug in CeilLog2 that will make it return
the correct result for 1.
kern/tru64/tru64_events.cc:
fix #includes
--HG--
extra : convert_revision : c47915fc417fdc194a5561949a5366ffb266e693
|
|
into zizzer.eecs.umich.edu:/y/sraasch/m5
--HG--
extra : convert_revision : 022364d1e5bf2f3b004ba75164580c1a821b16a5
|
|
base/statistics.hh:
Put a commented-out #define for STAT_DEBUG
--HG--
extra : convert_revision : 7c2decc9dac7c3c9d867461d2e0f1970f3ca0733
|
|
cpu/pc_event.cc:
SCCS merged
--HG--
extra : convert_revision : f7046f2bf6053be9b00150390fabe3d4f82b0981
|
|
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5
--HG--
extra : convert_revision : 25b46c6ff1be6ea339dcaccce2f2987e4ea0f484
|
|
Trial fix, uint64_T > long
base/hostinfo.cc:
Trial fix, uint64_T > long
--HG--
extra : convert_revision : cc039420980f1bf29074a20ccea3b9a3afe99f22
|
|
into its own Tru64System object. Also remove the System builder
stuff and create a Tru64System builder. This makes it much
simpler to support more operating systems.
arch/alpha/ev5.cc:
Each system provides its own mechanism for doing a breakpoint.
base/remote_gdb.hh:
#include <map>
cpu/pc_event.cc:
cpu/pc_event.hh:
Separate out System specific PCEvents
cpu/simple_cpu/simple_cpu.cc:
each system provides its own init script
kern/tru64/dump_mbuf.cc:
kern/tru64/printf.cc:
Stick this in a namespace
--HG--
extra : convert_revision : 9f74527ed2ff8010431d9aff34357aaecc1fb3f6
|
|
base/hostinfo.cc:
Since we're talking about a u_int64, use %lld.
Maybe this should be converted using toNumber in the future.
--HG--
extra : convert_revision : f2ae97585d3009c380553313129dfdd212d6716b
|
|
There is still one documentation warning in the stat code, probably a
doxygen error.
base/statistics.cc:
Added documentation to SubData and StatData.
base/statistics.hh:
Documented most of the basic stats (storage, implemenation) and all of the
visible stats. There is more to be documented, but I'm going crazy now.
Also fixed the DistStor::zero() function to meet the semantics of the other ones.
--HG--
extra : convert_revision : f80b3075a3298cbded059be8125b7fc7b77020a9
|
|
remove stuff that is ambiguous
Clean up code a bit
arch/alpha/aout_machdep.h:
Add M5 License
docs/stl.hh:
M5 license
base/remote_gdb.cc:
Most of this is mine, so stick in the m5 license
dev/console.hh:
Clean up comments
merge simple() and out() into one function.
dev/console.hh:
dev/console.cc:
m5 license
dev/console.cc:
merge simple and out.
remove dead code
dev/console.cc:
Remove comments that weren't mine.
Clean up code
dev/console.hh:
update names
dev/alpha_console.cc:
use new interface
--HG--
extra : convert_revision : 3cd2357e1525db43c2ef9e89a9b47a47861d6af9
|