Kevin Lim [Tue, 11 Jan 2005 23:52:29 +0000 (18:52 -0500)]
Slight fixes, add in commit trace flag.
base/traceflags.py:
Add new commit rate trace flag.
build/SConstruct:
Add extra option for efence.
cpu/beta_cpu/alpha_full_cpu_impl.hh:
Use function calls instead of direct indexing (avoids confusion).
cpu/beta_cpu/commit_impl.hh:
Add commit rate trace output (might not be worthwhile in the future).
cpu/beta_cpu/decode_impl.hh:
Remove some older hacks. Fix it so that the isntruction properly sets its next
PC to the one calculated by the branch.
cpu/beta_cpu/fetch_impl.hh:
Remove old commented code.
cpu/beta_cpu/iew_impl.hh:
Add extra check to ensure that the instruction is valid.
cpu/beta_cpu/regfile.hh:
Include trace file.
--HG--
extra : convert_revision :
4ee1dc88f8a5ed9b65486c6c111a3718a8040e42
Kevin Lim [Thu, 21 Oct 2004 22:02:36 +0000 (18:02 -0400)]
Check in of various updates to the CPU. Mainly adds in stats, improves
branch prediction, and makes memory dependence work properly.
SConscript:
Added return address stack, tournament predictor.
cpu/base_cpu.cc:
Added debug break and print statements.
cpu/base_dyn_inst.cc:
cpu/base_dyn_inst.hh:
Comment out possibly unneeded variables.
cpu/beta_cpu/2bit_local_pred.cc:
2bit predictor no longer speculatively updates itself.
cpu/beta_cpu/alpha_dyn_inst.hh:
Comment formatting.
cpu/beta_cpu/alpha_full_cpu.hh:
Formatting
cpu/beta_cpu/alpha_full_cpu_builder.cc:
Added new parameters for branch predictors, and IQ parameters.
cpu/beta_cpu/alpha_full_cpu_impl.hh:
Register stats.
cpu/beta_cpu/alpha_params.hh:
Added parameters for IQ, branch predictors, and store sets.
cpu/beta_cpu/bpred_unit.cc:
Removed one class.
cpu/beta_cpu/bpred_unit.hh:
Add in RAS, stats. Changed branch predictor unit functionality
so that it holds a history of past branches so it can update, and also
hold a proper history of the RAS so it can be restored on branch
mispredicts.
cpu/beta_cpu/bpred_unit_impl.hh:
Added in stats, history of branches, RAS. Now bpred unit actually
modifies the instruction's predicted next PC.
cpu/beta_cpu/btb.cc:
Add in sanity checks.
cpu/beta_cpu/comm.hh:
Add in communication where needed, remove it where it's not.
cpu/beta_cpu/commit.hh:
cpu/beta_cpu/rename.hh:
cpu/beta_cpu/rename_impl.hh:
Add in stats.
cpu/beta_cpu/commit_impl.hh:
Stats, update what is sent back on branch mispredict.
cpu/beta_cpu/cpu_policy.hh:
Change the bpred unit being used.
cpu/beta_cpu/decode.hh:
cpu/beta_cpu/decode_impl.hh:
Stats.
cpu/beta_cpu/fetch.hh:
Stats, change squash so it can handle squashes from decode differently
than squashes from commit.
cpu/beta_cpu/fetch_impl.hh:
Add in stats. Change how a cache line is fetched. Update to work with
caches. Also have separate functions for different behavior if squash
is coming from decode vs commit.
cpu/beta_cpu/free_list.hh:
Remove some old comments.
cpu/beta_cpu/full_cpu.cc:
cpu/beta_cpu/full_cpu.hh:
Added function to remove instructions from back of instruction list
until a certain sequence number.
cpu/beta_cpu/iew.hh:
Stats, separate squashing behavior due to branches vs memory.
cpu/beta_cpu/iew_impl.hh:
Stats, separate squashing behavior for branches vs memory.
cpu/beta_cpu/inst_queue.cc:
Debug stuff
cpu/beta_cpu/inst_queue.hh:
Stats, change how mem dep unit works, debug stuff
cpu/beta_cpu/inst_queue_impl.hh:
Stats, change how mem dep unit works, debug stuff. Also add in
parameters that used to be hardcoded.
cpu/beta_cpu/mem_dep_unit.hh:
cpu/beta_cpu/mem_dep_unit_impl.hh:
Add in stats, change how memory dependence unit works. It now holds
the memory instructions that are waiting for their memory dependences
to resolve. It provides which instructions are ready directly to the
IQ.
cpu/beta_cpu/regfile.hh:
Fix up sanity checks.
cpu/beta_cpu/rename_map.cc:
Fix loop variable type.
cpu/beta_cpu/rob_impl.hh:
Remove intermediate DynInstPtr
cpu/beta_cpu/store_set.cc:
Add in debugging statements.
cpu/beta_cpu/store_set.hh:
Reorder function arguments to match the rest of the calls.
--HG--
extra : convert_revision :
aabf9b1fecd1d743265dfc3b174d6159937c6f44
Kevin Lim [Thu, 23 Sep 2004 18:06:03 +0000 (14:06 -0400)]
Update to make multiple instruction issue and different latencies work.
Also change to ref counted DynInst.
SConscript:
Add branch predictor, BTB, load store queue, and storesets.
arch/isa_parser.py:
Specify the template parameter for AlphaDynInst
base/traceflags.py:
Add load store queue, store set, and mem dependence unit to the
list of trace flags.
cpu/base_dyn_inst.cc:
Change formating, add in debug statement.
cpu/base_dyn_inst.hh:
Change DynInst to be RefCounted, add flag to clear whether or not this
instruction can commit. This is likely to be removed in the future.
cpu/beta_cpu/alpha_dyn_inst.cc:
AlphaDynInst has been changed to be templated, so now this CC file
is just used to force instantiations of AlphaDynInst.
cpu/beta_cpu/alpha_dyn_inst.hh:
Changed AlphaDynInst to be templated on Impl. Removed some unnecessary
functions.
cpu/beta_cpu/alpha_full_cpu.cc:
AlphaFullCPU has been changed to be templated, so this CC file is now
just used to force instantation of AlphaFullCPU.
cpu/beta_cpu/alpha_full_cpu.hh:
Change AlphaFullCPU to be templated on Impl.
cpu/beta_cpu/alpha_impl.hh:
Update it to reflect AlphaDynInst and AlphaFullCPU being templated
on Impl. Also removed time buffers from here, as they are really
a part of the CPU and are thus in the CPU policy now.
cpu/beta_cpu/alpha_params.hh:
Make AlphaSimpleParams inherit from the BaseFullCPU so that it doesn't
need to specifically declare any parameters that are already in the
BaseFullCPU.
cpu/beta_cpu/comm.hh:
Changed the structure of the time buffer communication structs. Now
they include the size of the packet of instructions it is sending.
Added some parameters to the backwards communication struct, mainly
for squashing.
cpu/beta_cpu/commit.hh:
Update typenames to reflect change in location of time buffer structs.
Update DynInst to DynInstPtr (it is refcounted now).
cpu/beta_cpu/commit_impl.hh:
Formatting changes mainly. Also sends back proper information
on branch mispredicts so that the bpred unit can update itself.
Updated behavior for non-speculative instructions (stores, any
other non-spec instructions): once they reach the head of the ROB,
the ROB signals back to the IQ that it can go ahead and issue the
non-speculative instruction. The instruction itself is updated so that
commit won't try to commit it again until it is done executing.
cpu/beta_cpu/cpu_policy.hh:
Added branch prediction unit, mem dependence prediction unit, load
store queue. Moved time buffer structs from AlphaSimpleImpl to here.
cpu/beta_cpu/decode.hh:
Changed typedefs to reflect change in location of time buffer structs
and also the change from DynInst to ref counted DynInstPtr.
cpu/beta_cpu/decode_impl.hh:
Continues to buffer instructions even while unblocking now. Changed
how it loops through groups of instructions so it can properly block
during the middle of a group of instructions.
cpu/beta_cpu/fetch.hh:
Changed typedefs to reflect change in location of time buffer structs
and the change to ref counted DynInsts. Also added in branch
brediction unit.
cpu/beta_cpu/fetch_impl.hh:
Add in branch prediction. Changed how fetch checks inputs and its
current state to make for easier logic.
cpu/beta_cpu/free_list.cc:
Changed int regs and float regs to logically use one flat namespace.
Future change will be moving them to a single scoreboard to conserve
space.
cpu/beta_cpu/free_list.hh:
Mostly debugging statements. Might be removed for performance in future.
cpu/beta_cpu/full_cpu.cc:
Added in some debugging statements. Updated BaseFullCPU to take
a params object.
cpu/beta_cpu/full_cpu.hh:
Added params class within BaseCPU that other param classes will be
able to inherit from. Updated typedefs to reflect change in location
of time buffer structs and ref counted DynInst.
cpu/beta_cpu/iew.hh:
Updated typedefs to reflect change in location of time buffer structs
and use of ref counted DynInsts.
cpu/beta_cpu/iew_impl.hh:
Added in load store queue, updated iew to be able to execute non-
speculative instructions, instead of having them execute in commit.
cpu/beta_cpu/inst_queue.hh:
Updated change to ref counted DynInsts. Changed inst queue to hold
non-speculative instructions as well, which are issued only when
commit signals backwards that a nonspeculative instruction is at
the head of the ROB.
cpu/beta_cpu/inst_queue_impl.hh:
Updated to allow for non-speculative instructions to be in the inst
queue. Also added some debug functions.
cpu/beta_cpu/regfile.hh:
Added debugging statements, changed formatting.
cpu/beta_cpu/rename.hh:
Updated typedefs, added some functions to clean up code.
cpu/beta_cpu/rename_impl.hh:
Moved some code into functions to make it easier to read.
cpu/beta_cpu/rename_map.cc:
Changed int and float reg behavior to use a single flat namespace. In
the future, the rename maps can be combined to a single rename map to
save space.
cpu/beta_cpu/rename_map.hh:
Added destructor.
cpu/beta_cpu/rob.hh:
Updated it with change from DynInst to ref counted DynInst.
cpu/beta_cpu/rob_impl.hh:
Formatting, updated to use ref counted DynInst.
cpu/static_inst.hh:
Updated forward declaration for AlphaDynInst now that it is templated.
--HG--
extra : convert_revision :
1045f240ee9b6a4bd368e1806aca029ebbdc6dd3
Kevin Lim [Fri, 20 Aug 2004 18:54:07 +0000 (14:54 -0400)]
Check in of new CPU. This checkin works under non-Fullsystem mode, with no caches.
SConscript:
Added new CPU files to build.
arch/alpha/isa_desc:
Changed rduniq and wruniq to be nonspeculative because the uniq register is not renamed.
arch/isa_parser.py:
Added new CPU exec method.
base/statistics.hh:
Minor change for namespace conflict. Probably can change back one the new CPU files are cleaned up.
base/traceflags.py:
Added new CPU trace flags.
cpu/static_inst.hh:
Changed static inst to use a file that defines the execute functions.
--HG--
extra : convert_revision :
bd4ce34361308280168324817fc1258dd253e519
Nathan Binkert [Wed, 11 Aug 2004 14:19:22 +0000 (10:19 -0400)]
Whack the make stuff since it doesn't work anymore anyway.
We're solely using SCons now.
--HG--
extra : convert_revision :
122b255e3143d1192c136211cbf3618ff7262fa9
Nathan Binkert [Wed, 11 Aug 2004 14:17:11 +0000 (10:17 -0400)]
commented script with various kernel parameter tweaks for better
network performance
--HG--
extra : convert_revision :
9fd2f18a0d2b79942661d764d90177a50754d9c0
Nathan Binkert [Wed, 11 Aug 2004 14:14:26 +0000 (10:14 -0400)]
cleanup interrupt code for gigabit device
dev/ns_gige.cc:
Clean up the interrupt code. Do a better job determining when
coalescing should happen.
Remove some bogus comments
Stop using magic numbers in initialization and comment what
the various numbers do
dev/ns_gige_reg.h:
#define describing which interrupts cannot be delayed and
which interrrupts we don't implement
--HG--
extra : convert_revision :
eb196afa0bf448e1849dd2bd30dde32134effee7
Nathan Binkert [Wed, 11 Aug 2004 13:05:13 +0000 (09:05 -0400)]
std::
--HG--
extra : convert_revision :
8383048265ef5b4d7c995dbf44f7d85e349ddbde
Ali Saidi [Tue, 10 Aug 2004 17:32:15 +0000 (13:32 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision :
006842b706c7d972f6722b2767c82c6761c447b2
Nathan Binkert [Tue, 10 Aug 2004 13:08:36 +0000 (09:08 -0400)]
tweak a bunch of kernel parameters to get better performance
--HG--
extra : convert_revision :
57cca576fac4013027c2cb6c85cc73cbbcf772ae
Nathan Binkert [Tue, 10 Aug 2004 01:20:52 +0000 (21:20 -0400)]
Totally re-do/reorganize the python part of the statistics code
Make the database creation/removal/cleanup code use python
Make formulas work with the database
Add support to do some graphing, but needs more work
Still need to work on vectors, 2d vectors, dists and vectordists
--HG--
extra : convert_revision :
1a88320dcc036a3751e8a036770766dce76a568c
Steve Reinhardt [Sat, 7 Aug 2004 21:23:01 +0000 (14:23 -0700)]
Split libelf/SConscript into two parts, one for the
shared build and one for the per-config header file
copying.
SConscript:
Just include libelf/SConscript-local.
build/SConstruct:
Include libelf/SConscript-global.
--HG--
extra : convert_revision :
0a4ae8f1514819f99fec101b898c19dabd4d59bd
Steve Reinhardt [Sat, 7 Aug 2004 06:38:27 +0000 (02:38 -0400)]
make_c_file.py, load_odescs.py:
Change mode to -rwxrwx--x
--HG--
extra : convert_revision :
253dc560ed7b1f321635a9420e47d6d6e53c30ad
Steve Reinhardt [Thu, 5 Aug 2004 09:03:47 +0000 (02:03 -0700)]
Integrate Python configuration script parsing into m5 itself.
SConscript:
Add pyconfig/{pyconfig,code}.cc
Add list of object description (.od) files.
Include pyconfig/SConscript.
base/inifile.cc:
Get rid of CPP_PIPE... it never really worked anyway.
base/inifile.hh:
Make load(ifstream&) method public so pyconfig
code can call it.
sim/main.cc:
Handle Python config scripts (end in '.py' instead of '.ini').
sim/pyconfig/m5configbase.py:
Add license.
Fix minor __setattr__ problem (2.3 related?)
--HG--
rename : util/config/m5configbase.py => sim/pyconfig/m5configbase.py
extra : convert_revision :
5e004922f950bfdefced333285584b80ad7ffb83
Steve Reinhardt [Wed, 4 Aug 2004 05:46:03 +0000 (22:46 -0700)]
Move libelf/SConscript include to m5/SConscript, so elf
headers get created in build tree (under build/FOO/libelf)
instead of source tree (m5/libelf).
SConscript:
Move libelf/SConscript include here.
build/SConstruct:
Get rid of libelf/SConscript include (moved to
m5/SConscript).
--HG--
extra : convert_revision :
c0acb3bab2afa5079748b907c5917f548582099e
Ali Saidi [Tue, 3 Aug 2004 22:05:54 +0000 (18:05 -0400)]
added p4 config
--HG--
extra : convert_revision :
e64b1d6340f7a262653847f15f736e25356ed2d2
Ali Saidi [Mon, 2 Aug 2004 21:16:54 +0000 (17:16 -0400)]
merged full_cpu.ini, system.ini and devtime.c
util/ccdrv/devtime.c:
coding style
--HG--
extra : convert_revision :
972941e100ba13a2ece0986454c4a3485841d9cb
Ali Saidi [Mon, 2 Aug 2004 21:10:02 +0000 (17:10 -0400)]
added m5 debug and m5 switch cpu instruction (doesn't work yet) and
a p4 memory/cpu config
arch/alpha/alpha_memory.cc:
Added code to fault on an unaligned access
arch/alpha/isa_desc:
arch/alpha/pseudo_inst.cc:
arch/alpha/pseudo_inst.hh:
Added m5debug break and m5switchcpu (the latter doesn't work)
--HG--
extra : convert_revision :
409e73adb151600a4fea49f35bf6f503f66fa916
Nathan Binkert [Mon, 2 Aug 2004 19:42:25 +0000 (15:42 -0400)]
fix compile
base/stats/events.cc:
Make this compile with MYSQL stuff
--HG--
extra : convert_revision :
e4e8f9b078447f5e7f535b2678a2ed7d44fa8644
Ali Saidi [Sun, 1 Aug 2004 04:52:32 +0000 (00:52 -0400)]
moved alpha access to an unused part of the uncachebale address
space in tsunami.
--HG--
extra : convert_revision :
53eb2ed0cf869565b76d1576c65e29fb3df4dcb6
Ali Saidi [Sat, 31 Jul 2004 04:55:15 +0000 (00:55 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5-dprintk
--HG--
extra : convert_revision :
d26b89ff1bf224dbcd6c9eeeab361f516a8d7360
Ali Saidi [Sat, 31 Jul 2004 04:55:05 +0000 (00:55 -0400)]
few forgotten changes for dprintk
SConscript:
Added printk to scons
kern/linux/linux_system.cc:
kern/linux/printk.cc:
Forgot to commit this dprintk change
--HG--
extra : convert_revision :
d9a71835b55ece7e84b34632ee6646ac2d0535da
Lisa Hsu [Sat, 31 Jul 2004 01:14:05 +0000 (21:14 -0400)]
added printk.cc to the sconsscript so it will actually build.
SConscript:
grrr, spent half an hour looking for why the linker was dying. needed to include the new file printk.cc
--HG--
extra : convert_revision :
4c461d9dbe96e94d7c312bf71ee8ad4c87a3b1a1
Ali Saidi [Fri, 30 Jul 2004 21:13:24 +0000 (17:13 -0400)]
Added debug printk support
arch/alpha/ev5.hh:
Added max address PAL code can be at
arch/alpha/vtophys.cc:
Check max address pal can be at so we don't do the wrong conversion
if gdb asks for an unaligned access.
--HG--
extra : convert_revision :
b44f6a8fcd8582337a7d4033f28137c7e718a6a8
Nathan Binkert [Fri, 30 Jul 2004 16:57:12 +0000 (12:57 -0400)]
Clean up the functional memory debugging stuff a bit.
--HG--
extra : convert_revision :
3e05996af51c1c051b044864b50edb21e39368e4
Nathan Binkert [Fri, 30 Jul 2004 15:37:15 +0000 (11:37 -0400)]
name this stat since it makes life easier with the mysql stuff
--HG--
extra : convert_revision :
cad76b1741f17e183285a8805198345bd815e98b
Nathan Binkert [Fri, 30 Jul 2004 15:33:45 +0000 (11:33 -0400)]
better debugging
dev/ns_gige.cc:
Make all DPRINTF statements take one line. If they need two lines,
break them up into separate statements. This makes grep much more
effective since *every* line will be prefixed by the cycle that the
trace message is from and the object that caused the message.
normalize some debugging statements so that searching is easier
(e.g. always say rxState, not rx state or receive state)
break into the debugger when a packet is dropped since we don't really
like dropping packets.
--HG--
extra : convert_revision :
9cf309ca2143a6b8c8215ac5dd6a31aae60173cd
Nathan Binkert [Fri, 30 Jul 2004 15:29:45 +0000 (11:29 -0400)]
Fix a few bugs in the receive state machine. In doing back to tracking
whether or not the state machine is enabled rather than tracking the
specific instance of trying to halt the state machine.
dev/ns_gige.cc:
change back to tracking the state machine's enableness instead of
whether or not it is trying to halt. Also fix a major bug that
would cause the NIC to drop packets when the rx state machine was
idle, but enabled.
Fix a couple other bugs in the state machine where the idle interrupt
would happen at the wrong time.
Add a warning to deal with improper values of intrTick
dev/ns_gige.hh:
We need to keep track of whether the state machine is enabled
or not separately from the control register since the bits don't
always reflect the truth.
--HG--
extra : convert_revision :
20056b225fa62a0744473babfd693506aa5f29b2
Nathan Binkert [Fri, 30 Jul 2004 15:17:20 +0000 (11:17 -0400)]
make all ethernet dma use the new interface
--HG--
extra : convert_revision :
1cab883fac2bffd83cb035ebf28958c15118dfdc
Nathan Binkert [Fri, 30 Jul 2004 15:09:03 +0000 (11:09 -0400)]
better debugging of DMA operations
dev/ns_gige.cc:
use the new PhysicalMemory dma_read and dma_write functions
--HG--
extra : convert_revision :
427049d43355f02ac8bdfe2e60c24825dd734006
Nathan Binkert [Fri, 30 Jul 2004 14:59:59 +0000 (10:59 -0400)]
Improve the debuggability of FunctionalMemory objects by allowing
the user to choose which objects will break (so you can have only
the client system break for example.) Add features to differentiate
between breaking on reads and writes and break when an address gets
a specific data value.
--HG--
extra : convert_revision :
b8b2d1b43832bf74ee75b3f789df829f5b876a17
Nathan Binkert [Fri, 30 Jul 2004 14:47:53 +0000 (10:47 -0400)]
Move all of the object matching code to a shared file so it can
be more easily re-used. This currently uses some cooked up matching
function that I wrote a while ago, but should probably be changed
to use regular expressions in the future.
add doDebugBreak to control breakpoints on a per SimObject basis
SConscript:
add match
base/stats/events.cc:
base/trace.cc:
Move the object matching code into a separate file so it can be
more easily shared
base/trace.hh:
the object matching code was wrapped up and moved. adapt.
sim/sim_object.cc:
add the doDebugBreak flag that can be set on a per-SimObject
basis. This will be used in the future to control whether or
not debug_break() will actually break for a given object.
provide a function interface that can be called from the debugger.
sim/sim_object.hh:
add the doDebugBreak flag that can be set on a per-SimObject
basis. This will be used in the future to control whether or
not debug_break() will actually break for a given object.
--HG--
extra : convert_revision :
6bf7924de63d41f5ba6b80d579efdf26ba265a8f
Nathan Binkert [Fri, 30 Jul 2004 14:18:04 +0000 (10:18 -0400)]
Make the DDUMP tracing feature output the cycle number and
the object name on every line.
This makes grep a bit more effective.
kern/tru64/dump_mbuf.cc:
use the new data dump format that trace.hh now provides
--HG--
extra : convert_revision :
179efa96aaff9da710baae13c9e981975d2abdc1
Ali Saidi [Wed, 28 Jul 2004 21:56:42 +0000 (17:56 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5
--HG--
extra : convert_revision :
11ce57baaa1ccdb159d83bdad527c92087aa0502
Ali Saidi [Wed, 28 Jul 2004 21:56:36 +0000 (17:56 -0400)]
updated readme to reflect linux/scons changes
Put correct date in copyright headers based on bk changesets
LICENSE:
Updated copyright on license file
README:
Updaded readme to reflect shift to scons and linux support
cpu/trace/reader/ibm_reader.cc:
cpu/trace/reader/ibm_reader.hh:
cpu/trace/reader/itx_reader.cc:
cpu/trace/reader/itx_reader.hh:
cpu/trace/reader/m5_reader.cc:
cpu/trace/reader/m5_reader.hh:
cpu/trace/reader/mem_trace_reader.cc:
cpu/trace/reader/mem_trace_reader.hh:
cpu/trace/trace_cpu.cc:
cpu/trace/trace_cpu.hh:
updated copyright (only changeset in 2004)
kern/kernel_stats.cc:
kern/kernel_stats.hh:
updated copyright
--HG--
extra : convert_revision :
726aed4b38ff4d230c63a570df83c63075b3c76f
Nathan Binkert [Tue, 27 Jul 2004 03:10:20 +0000 (23:10 -0400)]
style
--HG--
extra : convert_revision :
7489726b6c7bd11af603a448e4ff56c1e46139fe
Nathan Binkert [Mon, 26 Jul 2004 17:03:27 +0000 (13:03 -0400)]
Move the query function to the cc file and make trace stuff work
base/mysql.cc:
Move the query function to the cc file
make the trace stuff work
base/mysql.hh:
Move the query function to the cc file
--HG--
extra : convert_revision :
c47cb12afa47d3fe4a7a031b3563601adab62913
Nathan Binkert [Fri, 23 Jul 2004 20:30:35 +0000 (16:30 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/current
--HG--
extra : convert_revision :
375f5dc9556fa12bd67915b8c348f35f49ca5049
Nathan Binkert [Fri, 23 Jul 2004 19:52:28 +0000 (15:52 -0400)]
add a trace mechanism to trace sql stuff
base/mysql.hh:
Trace sql queries
base/traceflags.py:
Add a trace flag to trace sql queries
--HG--
extra : convert_revision :
dc25abb474db7334529b791a7aa90f8178ea59ea
Nathan Binkert [Fri, 23 Jul 2004 16:44:55 +0000 (12:44 -0400)]
use the linux 2.6 kernel
Make it so the two system config can have one system with
a cache hier and the other without
--HG--
extra : convert_revision :
32403821cb889d00283ae0982e3fbe21a93acce4
Nathan Binkert [Fri, 23 Jul 2004 16:19:27 +0000 (12:19 -0400)]
When a packet has finished transmitting, kick the state
machine too. The fifo may have been full and we want
to get another packet into it if we can.
--HG--
extra : convert_revision :
8f57294bd18f5eccb900118f2de83a4ccfd20dbb
Nathan Binkert [Fri, 23 Jul 2004 15:54:54 +0000 (11:54 -0400)]
formatting
--HG--
extra : convert_revision :
a1577ca129ff98ab83bb46714331831c15156adc
Nathan Binkert [Fri, 23 Jul 2004 04:24:24 +0000 (00:24 -0400)]
sim ticks should be the number of elapsed ticks, not curTick
--HG--
extra : convert_revision :
709753255e3e0425940b49e5df0271105935f3d4
Nathan Binkert [Fri, 23 Jul 2004 04:15:52 +0000 (00:15 -0400)]
a little bit more info when dumping the event queue.
add a function that can be called from the debugger to dump
the event queue
--HG--
extra : convert_revision :
2a8bb9b948abf611e8dc8cefe208a33b7a3c2c90
Nathan Binkert [Fri, 23 Jul 2004 04:14:26 +0000 (00:14 -0400)]
If we're doing mysql, we're doing binning
--HG--
extra : convert_revision :
a5a15136d991b41263d6e5aa2f79deefc85a99a9
Nathan Binkert [Fri, 23 Jul 2004 04:05:29 +0000 (00:05 -0400)]
notify the transmitter when the packet has finished transmitting.
--HG--
extra : convert_revision :
66f6f80945c1f621cdc3e743f601d2a73361bacd
Nathan Binkert [Fri, 23 Jul 2004 03:59:12 +0000 (23:59 -0400)]
Stats database fixes to avoid naming conflicts in the database
and to do proper dumping of non-binned stats.
base/stats/mysql.cc:
have configure return whether or not the stat is a printable
stat. This avoids naming problems in the database.
don't store non printable stats.
dump non-binned stats into the special bin 0
base/stats/mysql.hh:
have configure return whether or not the stat is a printable
stat. This avoids naming problems in the database.
--HG--
extra : convert_revision :
e33b115d605226a838eee2e6489e03b8d77ffc02
Nathan Binkert [Fri, 23 Jul 2004 03:54:24 +0000 (23:54 -0400)]
Add support to store less than the full packet in an etherdump
and actually default to only storing a max of 96 bytes per
packet since that should be plenty to fit all of the headers in.
--HG--
extra : convert_revision :
0c4a6571d80536477ed166e695d957e39da0334e
Nathan Binkert [Fri, 23 Jul 2004 01:31:35 +0000 (21:31 -0400)]
more initial checking of stats
base/statistics.cc:
add more checking to the stats stuff to make sure that
things are set up correctly
base/stats/statdb.cc:
Check that bins are only registered once.
--HG--
extra : convert_revision :
b0eafe4f584a8587dc3bf48812c632531ca28cb6
Ali Saidi [Wed, 21 Jul 2004 22:48:13 +0000 (18:48 -0400)]
one more fix to the ini files
--HG--
extra : convert_revision :
1261cb1dd78c3a7e4ec1c99de4b6136819375016
Ali Saidi [Wed, 21 Jul 2004 20:26:51 +0000 (16:26 -0400)]
Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/tmp/m5
--HG--
extra : convert_revision :
8444a4f15530bef95350e124f9b840c74e236f7d
Ali Saidi [Wed, 21 Jul 2004 20:26:43 +0000 (16:26 -0400)]
updated config files to fix what was broken in paper rush
--HG--
extra : convert_revision :
3128d0edd9367cff6a24cd923068535b59de25fd
Nathan Binkert [Wed, 21 Jul 2004 19:44:57 +0000 (15:44 -0400)]
Wrap tracing stuff in #if TRACING_ON to avoid compile error
in m5.fast
--HG--
extra : convert_revision :
329d810bfe282e88133ca35da62ee6dcc73a38f5
Steve Reinhardt [Mon, 19 Jul 2004 06:03:17 +0000 (23:03 -0700)]
Add python-file-to-c-string utility for compiling python into the simulator
(for later piping to a forked interpreter, unless we go crazy and embed it).
--HG--
extra : convert_revision :
70860b12780830a16c48aedd495fd79730dfce4c
Lisa Hsu [Sun, 18 Jul 2004 04:03:07 +0000 (00:03 -0400)]
add some new stats and make one more change to the way the split lifo works.
--HG--
extra : convert_revision :
f9154409014cb9edba6c33be1e1063f13c593ea3
Lisa Hsu [Sat, 17 Jul 2004 03:29:33 +0000 (23:29 -0400)]
split_lifo.cc:
oops, also need to move a newly replaced blk to tail, if not there already.
--HG--
extra : convert_revision :
6e118cd135987c401f3663575d08f33c2c0c4ceb
Lisa Hsu [Sat, 17 Jul 2004 01:04:25 +0000 (21:04 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into shizzle.(none):/home/hsul/work/linux-clean
--HG--
extra : convert_revision :
6bdf1a161163ca1cec55b2a608b0e31eac8ef6b3
Lisa Hsu [Sat, 17 Jul 2004 01:01:49 +0000 (21:01 -0400)]
split_lifo.cc:
clear the isUsed flag for a block when it is replace in the 2Q scheme
--HG--
extra : convert_revision :
3284fe5ba4eb29dbd472237c09f95a8c92b2da5a
Nathan Binkert [Thu, 15 Jul 2004 03:02:11 +0000 (23:02 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest
--HG--
extra : convert_revision :
87387b4f896ed945196b2090484c932c8b7e5abc
Nathan Binkert [Thu, 15 Jul 2004 03:01:54 +0000 (23:01 -0400)]
Add a clock multiplier for simple CPU so that it is possible
to do multiple instructions per cycle.
--HG--
extra : convert_revision :
5588ae38071f170792aad93899fef6842b7d818d
Erik Hallnor [Thu, 15 Jul 2004 01:34:51 +0000 (21:34 -0400)]
Fix serialization when a tx interrupt isn't scheduled
dev/uart.cc:
Fix serialization when a tx interrupt isn't scheduled.
--HG--
extra : convert_revision :
3029e284cbba417e3f453d83fdf2ef307d684916
Steve Reinhardt [Wed, 14 Jul 2004 19:48:19 +0000 (15:48 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5
--HG--
extra : convert_revision :
c79927401293a4496223cf190b9fc6cab6ea12de
Steve Reinhardt [Wed, 14 Jul 2004 19:48:11 +0000 (15:48 -0400)]
SConscript:
Make decoder.cc/hh depend on isa_parser.py.
SConscript:
Make decoder.cc/hh depend on isa_parser.py.
--HG--
extra : convert_revision :
ff575d7f819da951423b36275e960fed652f9b2b
Nathan Binkert [Wed, 14 Jul 2004 13:44:31 +0000 (09:44 -0400)]
adjust latencies so that they more closely match numbers seen
in the real world.
re-work kernel ini files for more flexibility
--HG--
extra : convert_revision :
075c31c9daf251117cde7ef659e37e32d5e4b0c8
Nathan Binkert [Wed, 14 Jul 2004 13:06:56 +0000 (09:06 -0400)]
fix paths for changes in disk image layout
--HG--
extra : convert_revision :
506ff845efc8d786639c29931eb4abd3a5860fcf
Nathan Binkert [Wed, 14 Jul 2004 13:02:15 +0000 (09:02 -0400)]
Fix infinite loop in ns_gige stat machine
argh!
dev/ns_gige.cc:
Exit the state machine so that we don't come right back where
we started and enter an infinite loop.
--HG--
extra : convert_revision :
a5f2b5b5a692de6c80e4b02d7f9bc5d27fe17252
Lisa Hsu [Tue, 13 Jul 2004 15:05:43 +0000 (11:05 -0400)]
remove a panic in split.cc:regernateBlkAddr that shouldnt' be there.
--HG--
extra : convert_revision :
59029318d714cd93e998e45429cf96694020cc3c
Nathan Binkert [Tue, 13 Jul 2004 03:01:53 +0000 (23:01 -0400)]
put the formatting fixes back into devtime
util/ccdrv/devtime.c:
put the formatting fixes back. no tabs.
--HG--
extra : convert_revision :
541e91294ee5383f3b321dd084876ae7c353cce9
Nathan Binkert [Tue, 13 Jul 2004 02:58:22 +0000 (22:58 -0400)]
make the cache access latency a parameter that is based on bus
ticks for the most commonly accessed devices.
dev/baddev.cc:
Get rid of the constant cache access latency.
For unimportant devices, don't add any latency.
dev/ide_ctrl.cc:
dev/ide_ctrl.hh:
dev/ns_gige.cc:
dev/pciconfigall.cc:
dev/pciconfigall.hh:
dev/tsunami_cchip.cc:
dev/tsunami_cchip.hh:
dev/tsunami_io.cc:
dev/tsunami_io.hh:
dev/tsunami_pchip.cc:
dev/tsunami_pchip.hh:
dev/uart.cc:
dev/uart.hh:
make the cache access latency a parameter that is based on bus
ticks.
dev/io_device.cc:
dev/io_device.hh:
add an io latency variable
dev/ns_gige.hh:
this moved to io_device.hh
--HG--
extra : convert_revision :
4883130feeaef48abee492eddf0b8eb40eb94789
Ali Saidi [Tue, 13 Jul 2004 02:51:20 +0000 (22:51 -0400)]
modified devtime to print out raw data
--HG--
extra : convert_revision :
5ad673d6f684acaffeb61db794f7e2ac099ba99d
Ali Saidi [Tue, 13 Jul 2004 02:47:46 +0000 (22:47 -0400)]
modified ccdrv to print out raw data.
util/ccdrv/devtime.c:
modified to print out raw data.
--HG--
extra : convert_revision :
1f76ab8a022476e6a5ed787aa38547dd0ca99e36
Nathan Binkert [Tue, 13 Jul 2004 02:33:27 +0000 (22:33 -0400)]
formatting
--HG--
extra : convert_revision :
cbd0c148a50643191372fdba2f771d7e145f1bff
Lisa Hsu [Mon, 12 Jul 2004 20:09:52 +0000 (16:09 -0400)]
make tx/rx fifo size a param, also fix the empty dma problem by adjusting the state machine.
dev/ns_gige.cc:
make tx/rx fifo sizes a param. the default is 128K for each. also, make the state machine not move onto txFragRead if there is no room in the txfifo for data.
dev/ns_gige.hh:
make tx/rx fifo size a param
--HG--
extra : convert_revision :
ed91eb31c2b21d4cdc6de87d8641df6197be5209
Nathan Binkert [Sun, 11 Jul 2004 19:35:11 +0000 (15:35 -0400)]
Fix a couple of bugs in lisa's cache partitioning code.
--HG--
extra : convert_revision :
d3b6920609a59a33ac19bb1b395f5ae9694c2b53
Lisa Hsu [Sun, 11 Jul 2004 01:57:59 +0000 (21:57 -0400)]
the changeset of partitioned caches. this changeset creates Split tagstore class that makes either an LRU/LRU cache or a LRU/LIFO cache, it is also able to make just a LIFO cache.
SConscript:
add these files for partitioned caches
base/traceflags.py:
add Split as a traceflag
--HG--
extra : convert_revision :
6aa8f7c389ee1145b33be006c820236f11f5397c
Andrew Schultz [Sat, 10 Jul 2004 02:32:27 +0000 (22:32 -0400)]
Remove second pciToDma translation on current PRD address pointer b/c
second translation (which is superfluous) doesn't work properly when
system memory is higher than 128MB
--HG--
extra : convert_revision :
9cdf6925689d376953b1aa071bcd1e2f06419202
Nathan Binkert [Fri, 9 Jul 2004 19:08:42 +0000 (15:08 -0400)]
Defer registration only if we're sampling
--HG--
extra : convert_revision :
1bae80c02b39f91bb7867dad37cf170fd63ae838
Lisa Hsu [Fri, 9 Jul 2004 15:50:40 +0000 (11:50 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into shizzle.(none):/home/hsul/work/m5clean
--HG--
extra : convert_revision :
78beb2735c6536ce3e639d59c99e755e9139f4f1
Lisa Hsu [Fri, 9 Jul 2004 15:50:27 +0000 (11:50 -0400)]
when you add caches, dma commands within the state machine are delayed and cause the state machine to exit until the dma comes back. thus, all relevant code must be executed BEFORE going to do the dma code.
dev/ns_gige.cc:
rearrange code so nothing gets skipped when "doing dma."
--HG--
extra : convert_revision :
cca66885f45e7df1831e2d8ccaddf5ece7600b13
Nathan Binkert [Fri, 9 Jul 2004 03:36:09 +0000 (23:36 -0400)]
fix compile problem in floss_reasons.cc
--HG--
extra : convert_revision :
86252dca4cd0bd6c1bcfc5bc14aaa3b941c3a8f8
Nathan Binkert [Thu, 8 Jul 2004 22:16:30 +0000 (18:16 -0400)]
- fix bad merge
- pass in sample name to mysql
--HG--
extra : convert_revision :
5a31085931037637d05d6acdf601dee582a46710
Nathan Binkert [Thu, 8 Jul 2004 21:48:13 +0000 (17:48 -0400)]
Clean up some mysql stuff to make things work again and
hopefully improve performance a tad.
base/stats/mysql.cc:
- it's not called sample anymore, it's called tick
- don't bother to cleanup deleted runs. Doing this for each run
is not necessary, it can be done all at once
- don't query for a bin id every time, just do it once.
- use locking in a few places to prevent two processes from
stepping on eachother.
- don't duplicate subdata ids. use -1,y and x,-1
base/stats/mysql.hh:
It's not called sample anymore, it's called tick
--HG--
extra : convert_revision :
95de8498b627c9175da28a66604ec7c719f7804c
Nathan Binkert [Thu, 8 Jul 2004 21:44:08 +0000 (17:44 -0400)]
Clean up floss statistics names to avoid duplicate names
--HG--
extra : convert_revision :
57f34deaad00cc368e282a9f55ea8525b7c84563
Nathan Binkert [Thu, 8 Jul 2004 21:37:22 +0000 (17:37 -0400)]
unify all system boot ini files into a single one. To run
different experiments, use --<foo>.system:readfile=<script>
to change the experiment
--HG--
extra : convert_revision :
ff622a567bb10a14c5dd427a54814677cb205d7c
Nathan Binkert [Thu, 8 Jul 2004 20:08:47 +0000 (16:08 -0400)]
FullCPU needs its registration deferred
--HG--
extra : convert_revision :
1bb84b34333540456c2735e11a8927262b4db4c8
Nathan Binkert [Thu, 8 Jul 2004 20:02:37 +0000 (16:02 -0400)]
Tick is signed, so make Event start be large and positive,
not negative
--HG--
extra : convert_revision :
96be42a30fc0bd59eaff1d19161d881cab3895ae
Nathan Binkert [Thu, 8 Jul 2004 20:01:13 +0000 (16:01 -0400)]
Scripts that can be used with server.readfile and client.readfile
to run the netperf benchmark
--HG--
extra : convert_revision :
a2ce490e0c44996d0876a6839ad333643ec252c8
Nathan Binkert [Thu, 8 Jul 2004 19:59:46 +0000 (15:59 -0400)]
store the checkpoint to the proper directory
dev/disk_image.cc:
store the disk checkpoint to the proper directory
--HG--
extra : convert_revision :
f76347576691560f00c60b86ac2044960d5a193c
Andrew Schultz [Thu, 8 Jul 2004 19:22:41 +0000 (15:22 -0400)]
Change mount command for mounting disk images
--HG--
extra : convert_revision :
450e8c7332c1e3162cdbef4177b7f54b47b1648a
Nathan Binkert [Thu, 8 Jul 2004 18:23:49 +0000 (14:23 -0400)]
Fix the cache's address range.
**warning** this is still a hack. The caches need to figure this
out on their own!
--HG--
extra : convert_revision :
4fbebf302bfbeaa35e5aad276934d8d1ce5c6baf
Lisa Hsu [Thu, 8 Jul 2004 13:05:26 +0000 (09:05 -0400)]
fix the failing regression. the sconscript ("makefile") was missing the etherbus.cc src file.
SConscript:
THIS is why the regression keeps failing. it's missing the the etherbus file in the sconscript.
--HG--
extra : convert_revision :
adbcfb6036d8e8ecb51c4f484d0030059542684b
Ali Saidi [Thu, 8 Jul 2004 04:28:02 +0000 (00:28 -0400)]
fixed a bad merge from linux<->tru64
--HG--
extra : convert_revision :
d7a5acd89a2bdc013c8a2bd022cc7048a3920f01
Lisa Hsu [Wed, 7 Jul 2004 00:04:17 +0000 (20:04 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into shizzle.(none):/home/hsul/work/linux-clean
--HG--
extra : convert_revision :
e0192f56c189e595daf3c020a56e1c02010aefbc
Nathan Binkert [Tue, 6 Jul 2004 23:27:33 +0000 (19:27 -0400)]
disable the binned_fn stuff
cpu0 -> cpu since we're not all set up for MP in the
ini files just yet.
--HG--
extra : convert_revision :
69a5af791ea89fec7e647d55644cc4eeaf924651
Nathan Binkert [Tue, 6 Jul 2004 23:22:39 +0000 (19:22 -0400)]
Make binning work with stuff other than FS_MEASURE
--HG--
extra : convert_revision :
e3fa3cfbdf2f13dd3a8d2266dd64c2c335f998d6
Nathan Binkert [Tue, 6 Jul 2004 23:21:47 +0000 (19:21 -0400)]
Fix some ini stuff.
--HG--
extra : convert_revision :
b870550f52901fe723eeab24a14ac4c1222ee1bd
Lisa Hsu [Tue, 6 Jul 2004 21:55:16 +0000 (17:55 -0400)]
tag each mem_req as coming from the nic if it is DMA'd from the NIC. the NIC tells the DMA interface, which in turn sets a new nic_req flag in the MemReq it makes.
dev/ns_gige.cc:
tell all outgoing dma events that this request is from the NIC
--HG--
extra : convert_revision :
62af17a2728a0ff729e7723dc29bd0d130ca5fe3
Lisa Hsu [Tue, 6 Jul 2004 21:42:58 +0000 (17:42 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into shizzle.(none):/home/hsul/work/linux-clean
--HG--
extra : convert_revision :
cd46aa31dab82e43c3c4f8bb6f0fe2e018acfd12
Erik Hallnor [Tue, 6 Jul 2004 15:29:23 +0000 (11:29 -0400)]
Remove duplicate stat
cpu/trace/reader/m5_reader.cc:
Wrap assert variable in NDEBUG
--HG--
extra : convert_revision :
8c79dc30eff2f2fa0110a04c30df17ec4417c28c
Ali Saidi [Mon, 5 Jul 2004 20:49:56 +0000 (16:49 -0400)]
updated to work on all platforms (actually map sure that the physical
address we are trying to access is mapped before accessing it.)
--HG--
extra : convert_revision :
104341334a3d2bb812a6b0b6277ab353f8f9b39e