Commit graph

1350 commits

Author SHA1 Message Date
Kevin Lim e6b99b0768 Merge zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5-patched/m5-new

--HG--
extra : convert_revision : e802c800a478c297d3aa780a9ea3c6701453d91d
2005-01-21 18:31:30 -05:00
Nathan Binkert fa7fa5a909 send output to the JOBDIR
--HG--
extra : convert_revision : d53864c55f20aa00754106390878ce04a4ff468e
2005-01-21 15:49:46 -05:00
Nathan Binkert 2b78a9c132 fix bug in python code
--HG--
extra : convert_revision : 67a931326e5a8e6b814ea6d3bcd384126b0cbba4
2005-01-21 15:13:27 -05:00
Nathan Binkert f3ff5fe28d Fixup checkpointing with the new config stuff.
objects/Root.mpy:
    add checkpointing as a parameter to the root object.

--HG--
extra : convert_revision : 3b809ebd776c8a9256a4ad6f8783cd96ab5cb1b3
2005-01-21 15:09:42 -05:00
Ron Dreslinski 77ae088345 Make it so that with dual CPU's we create more writebuffers by default, so that we can handle more uncached access (we will get some from multiple processors)
--HG--
extra : convert_revision : 4bb913340cda47925321da5f95aaa2ff95dbe9dd
2005-01-21 12:23:03 -05:00
Nathan Binkert 2b57a1b8c1 Fix some mysql code issues.
base/stats/events.cc:
    cast this to an unsigned long long to make the compiler happy
    on 64-bit platforms.

--HG--
extra : convert_revision : e893d21bb228cbfb0c23adb7c4eeb1f62209ca1c
2005-01-21 11:29:19 -05:00
Nathan Binkert be12fb379f Add more options that we may want to tweak on a per-job basis.
Fix the nat config.

--HG--
extra : convert_revision : 22bd4f20408371b644b51fd8d6b79486e1e5a59b
2005-01-21 11:27:14 -05:00
Nathan Binkert 1c31e247e7 Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest

--HG--
extra : convert_revision : 47fe06540907f6810cd1bccfc96a8705fd38c4ba
2005-01-21 11:19:26 -05:00
Ron Dreslinski 7f10e948a5 Merge zizzer:/z/m5/Bitkeeper/m5
into zazzer.eecs.umich.edu:/z/rdreslin/m5bk/new_config

--HG--
extra : convert_revision : 8c87cd948d501b1fc58d57f1f505d1f72725ecde
2005-01-21 04:55:55 -05:00
Ron Dreslinski 867d80d55d Fix annoying bug that lead to dropped packets in the P4 system
dev/pktfifo.cc:
    Make it so that we don't unserialize the size of the fifo, clobering the fact that we were trying to make it bigger, and leading to a misleading config.out that states the un-overwritten max_size.
    Perhaps this should instead be a panic if the size (amount that was serialized) is bigger than the maxsize that was assigned by the configuration file.

--HG--
extra : convert_revision : d4b0527bfd7a584554ddc87c9b2103f7a3a72332
2005-01-21 04:55:43 -05:00
Nathan Binkert 6cbce7631a Add a couple statistics contexts.
arch/alpha/pseudo_inst.cc:
    rename the context for consistency.
sim/pyconfig/m5config.py:
    Add a ParamContext class so that param contexts work with
    the new config stuff.

--HG--
extra : convert_revision : 3a6b583a25c86237baca7a2b4eccc9d12f86a384
2005-01-21 04:34:01 -05:00
Ali Saidi 29789443ba Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : d5e6f6e696d7607f89894856d940afc89ae8e37b
2005-01-19 18:40:09 -05:00
Ali Saidi 886f905785 added total bytes/bandwidth/packets formulas to nics
cleaned up stability code and wrote some better help for stats.py
fixed sample bug in info.py

dev/ns_gige.cc:
dev/ns_gige.hh:
dev/sinic.cc:
dev/sinic.hh:
    add total bandwidth/packets/bytes stats
util/stats/info.py:
    fixed samples bug
util/stats/stats.py:
    cleaned up stability code and wrote a bit better help

--HG--
extra : convert_revision : cae06f4fac744d7a51ee0909f21f03509151ea8f
2005-01-19 18:40:02 -05:00
Lisa Hsu db00ac3bc6 Add a new aggregate trace flag that doesn't print gobs of ethernet raw data, but prints everything else.
--HG--
extra : convert_revision : ddb0636f5d5f0c746bd121eaafc0c685b422b006
2005-01-19 18:18:15 -05:00
Kevin Lim 6ac7954242 Merge zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5-patched/m5-new

--HG--
extra : convert_revision : 3b9413a6861eaddb8de753d76e217106d41cc347
2005-01-19 16:34:35 -05:00
Ron Dreslinski 10371be698 Fix serialization of txPacket (need to properly calculate the length before serialization)
--HG--
extra : convert_revision : e93321495d19afb86949daf2c14102ffb6bcef41
2005-01-19 16:26:19 -05:00
Nathan Binkert b65f365474 fix unserialization of PacketFifo
dev/pktfifo.cc:
    fix unserialization.  calling resize on a list just sticks
    uninitialized garbage into the list.

--HG--
extra : convert_revision : 1cbff596dd0b88560e23b9368ec75a7369beb9d9
2005-01-19 12:43:06 -05:00
Nathan Binkert 40160ef074 Add the pc_sample_interval stuff
add a Sampler configuration for the P4

--HG--
extra : convert_revision : 45a8f67ff80b552925a5f1cb9b8c14e11c33b78c
2005-01-19 12:41:12 -05:00
Nathan Binkert cd79f6b698 Make the config stuff work on 64-bit machines
objects/Pci.mpy:
    specify that the value is a long so that it is not
    interpreted as a negative value.

--HG--
extra : convert_revision : 3b0df8711da5934aff0096ba54fb79da808e987b
2005-01-18 23:01:17 -05:00
Nathan Binkert e8d5895f3f remove assert that doesn't apply with the new configuration system
--HG--
extra : convert_revision : 9cec969a4f6fa391c05e3c152e3c1396646038f3
2005-01-18 18:09:27 -05:00
Nathan Binkert 6c1bef0270 Yet again, another configuration fix
--HG--
extra : convert_revision : e6683da3a35c57e742f572b0c5d5a79bfbecbdd9
2005-01-18 18:06:22 -05:00
Ali Saidi 3040d2a9fe Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : 5cb8186e246698fb2606beb4af8fd10cedb1b2a9
2005-01-18 17:55:42 -05:00
Ali Saidi cd56e4e08e Ability to check formulas
--HG--
extra : convert_revision : 68a2a19cceb4a8cf8a2798ee5c019d25c0fca3cc
2005-01-18 17:55:35 -05:00
Nathan Binkert d68ea8a2f8 Add a missing variable to the simple CPU
--HG--
extra : convert_revision : 50997f58f44506a6c5349a559298e8fc58d79974
2005-01-18 17:54:17 -05:00
Nathan Binkert 92533214b6 Fix the sampler for real this time
--HG--
extra : convert_revision : e930f9ec59c2e160be9a43e6e45608decd3f49c5
2005-01-18 15:51:53 -05:00
Kevin Lim 554dc7831f Merge zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5-patched/m5-new

--HG--
extra : convert_revision : c51d9a7361d8e3c23e9494640c66df8505322b00
2005-01-18 15:46:00 -05:00
Nathan Binkert 25f54857c9 fix typo
--HG--
extra : convert_revision : 7fe0b0b43534020ffd3e5d34a08efd24ba063e5a
2005-01-18 15:42:52 -05:00
Nathan Binkert d728d44b55 More configuration fixes
sim/pyconfig/m5config.py:
    put panic, AddToPath, and Import here so they're always available.

--HG--
extra : convert_revision : 104dba5ccac0d64479b4109d477b5192c4b07a6e
2005-01-18 15:28:34 -05:00
Ali Saidi cae9210dce Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : a799d615ab5a3d3447b24b1b1ce24cffcde361cd
2005-01-18 13:35:04 -05:00
Ali Saidi cbbbc9c57d now really done with stability stats stuff
--HG--
extra : convert_revision : 9bdbcec972f5d06e3ecd99c418fcccfaef7f6f3a
2005-01-18 13:34:58 -05:00
Ali Saidi 24bfd5ef01 finished stability stats option
--HG--
extra : convert_revision : 3ad0a143f79b116c5b18321846653d627429882a
2005-01-18 13:25:55 -05:00
Kevin Lim aed3e6780a Merge changes to make m5 g++ 3.4 compatible.
sim/param.cc:
    Merge changes.

--HG--
extra : convert_revision : b5044e1f7c48ae2d74d5233dd4fabfb7a801d7c8
2005-01-18 13:02:47 -05:00
Nathan Binkert 783f701247 Fix the p4 config
--HG--
extra : convert_revision : 64dac30ce221b71f0ac0e5bceed739fa95ab11a2
2005-01-18 12:51:09 -05:00
Nathan Binkert c633269cf7 More configuration tweaks/fixes
--HG--
extra : convert_revision : 8094d88e9e58f9097e9e4ffde70787f81bb235e1
2005-01-18 11:54:46 -05:00
Kevin Lim f31a27a030 Move trace data function to .cc file.
--HG--
extra : convert_revision : 8180068747489978a2bbaa096dc73b0cfd14b052
2005-01-18 11:43:45 -05:00
Nathan Binkert 82df189bad Config cleanups
sim/pyconfig/m5config.py:
    Remove unused code
    remove the defined() function that was masking the one
    that I really wanted
test/genini.py:
    Add the directory that a script was executed from to the
    path

--HG--
extra : convert_revision : a1861065b2de46d77c94691d0c5a7865cdce0f09
2005-01-17 23:41:35 -05:00
Nathan Binkert cc4e4ab7e1 fix the exec of python
--HG--
extra : convert_revision : 08b542ae09e69e139e0f03279a51fe253c05e629
2005-01-17 22:30:10 -05:00
Nathan Binkert c9fa82e25f configuration tweaks
--HG--
extra : convert_revision : 360bcbb0c67f4f40e7fc41db1befb4864dbbd14f
2005-01-17 01:35:33 -05:00
Nathan Binkert 32d3b0aa36 get the exit condition for the python code right
sim/main.cc:
    get the exit condition right

--HG--
extra : convert_revision : 0dada3d68492c46981c51d3de0de409b282bb13b
2005-01-17 01:30:39 -05:00
Nathan Binkert 6d980a2d1c don't use dirname
--HG--
extra : convert_revision : 181cbae18174b1278937720de09e0df14f7ce5e9
2005-01-17 01:23:50 -05:00
Nathan Binkert 2c45483009 fix dirname for linux
--HG--
extra : convert_revision : 751ce377d10e2f07ce83da8c1f44756ea62925d0
2005-01-17 01:11:27 -05:00
Nathan Binkert a1d65dd49e Remove all of the old param context description junk
--HG--
extra : convert_revision : 4df8112d713e83b4435f43edf40df87f5dda808f
2005-01-17 00:54:32 -05:00
Nathan Binkert a5df4b5c32 Add the pentium 4 configuration. Add some command line options
to M5 to support the python configuration stuff.

sim/main.cc:
    Make the -I option update the include path for phython as
    well as cpp
    Make the -P option pass a raw python string to the interpreter
    Make the -E option add strings to the environment
    Break up the various steps of python processing to accomidate
    multiple files and the various new options
test/genini.py:
    Make this executable

--HG--
extra : convert_revision : 6acc50d2e4367c5ceaee013db987c8a1db924df3
2005-01-17 00:52:51 -05:00
Nathan Binkert 3ece6ab029 New and improved configuration mechanism. No more writing of
wierd ini files.  The ini files are still used as an intermediate step,
but a sophisticated python library exists to help build them more
easily.

SConscript:
    add the new embedded file stuff
    remove all of the old object description junk
base/inifile.cc:
base/inifile.hh:
    get rid of findDefault and findAppend since they were the source
    of much evil.
base/trace.cc:
    For now, if we don't have the dprintf_stream set up, dump
    to standard out.  We probably want a command line option
    for this.
dev/alpha_console.cc:
    PioDevice now takes a platform parameter.
    All PioDevices must have a pio_latency parameter.  We stick
    a dummy parameter in here for now until we get rid of the
    builder stuff.
dev/alpha_console.hh:
    don't need Platform anymore
dev/baddev.cc:
    PioDevice now takes a platform parameter.
    All PioDevices must have a pio_latency parameter.  We stick
    a dummy parameter in here for now until we get rid of the
    builder stuff. Same for the platform parameter, though we just
    pass the PioDevice a null parameter since it isn't used by
    this device and it's quicker.
dev/baddev.hh:
    fix #include guards
dev/etherlink.cc:
    rename parameters.
dev/ethertap.cc:
    rename parameters
dev/ide_ctrl.cc:
    All devices need an address even if it will get overwritten later.
dev/ide_disk.cc:
    use an enum for the drive ID stuff.
    rename disk_delay -> delay
    Actually, I think that we should implement "cable select" and
    have the controller tell the drive what it is.
dev/io_device.cc:
dev/io_device.hh:
    All IO devices take a Platform *
dev/ns_gige.cc:
    all devices need an io_bus.  rename header_bus to io_bus
    We don't need stuff for the interrupt controller since
    it's all in the platform now.
dev/ns_gige.hh:
    We don't need stuff for the interrupt controller now since
    it's all in the platform.
dev/pciconfigall.cc:
    Pass a dummy NULL to the PioDevice for the platform since
    we don't need one.
dev/pcidev.cc:
    Move a bunch of common functionality into the PciDev
dev/platform.hh:
    remove unneeded code
dev/tsunami.cc:
    remove unused param
dev/tsunami_cchip.cc:
    pass platform pointer
dev/tsunami_io.cc:
dev/tsunami_pchip.cc:
dev/uart.cc:
    pass platform variable
dev/uart.hh:
    don't need to keep a platform pointer.  it's in the base class
kern/linux/linux_system.cc:
kern/tru64/tru64_system.cc:
    rename some parameters
sim/builder.cc:
    clean up builder code. use more parameters from the
    config node.  all sections with a type= are now created,
    the old mechanisms no longer work
sim/builder.hh:
    remove some extra variables since they are found in the ConfigNode
sim/main.cc:
    add a quick hack command line argument -X to dump out the
    embedded files.  (probably should be fixed up a little.)
    accept .mpy files
    printing to the streams has to happen after the hierarchy
    is built since we're moving away from param contexts
sim/param.cc:
    add parsing support for ranges
sim/process.cc:
    isValid isn't very useful anymore.  interpret the names
    stdout, stderr, cout, cerr for the file descriptors
sim/pyconfig/SConscript:
    Add Action handlers for creating an embedded python file
    and for creating an embedded C file.

    use these action handlers to embed all objects found in the objects
    tree into the binary along with the importer and the m5config stuff
sim/pyconfig/m5config.py:
    Major changes to the original configuration file generator.  These
    changes largely involve implementing copy-on-write like semantics
    for all of the SimObjects.  Real documentation must be written.
sim/universe.cc:
    Universe becomes a SimObject since we don't really have the notion of
    param contexts in the python code.

--HG--
rename : sim/pyconfig/m5configbase.py => sim/pyconfig/m5config.py
extra : convert_revision : c353453e5beb91c37f15755998fc0d8858c6829a
2005-01-15 04:12:25 -05:00
Kevin Lim f58d85128d Fixes so m5 compiles on gcc 3.4, which has much stricter syntax. Most changes come from templated code,
which is evaluated slightly differently than in previous versions of gcc.

arch/alpha/alpha_linux_process.cc:
    Alphabetize includes.
arch/alpha/vptr.hh:
    Change the constants that are being used for alpha pagebytes to come from the ISA.
base/random.hh:
cpu/static_inst.cc:
sim/param.cc:
    Fix up template syntax.
base/range.hh:
    Include iostream for << operator.
base/res_list.hh:
base/statistics.hh:
cpu/simple_cpu/simple_cpu.hh:
cpu/static_inst.hh:
sim/eventq.hh:
sim/param.hh:
    Fixup for templated code to resolve different scope lookup in gcc 3.4.  This defers the lookup of the
    function/variable until actual instantiation time by making it dependent on the templated class/function.
base/trace.cc:
    Fix call to new.
base/trace.hh:
    Fix up #define to have full path.
cpu/base_cpu.cc:
    Fix up call to new.
dev/etherlink.hh:
dev/ns_gige.hh:
dev/sinic.hh:
    Fixup for friend class/function declaration.  g++ 3.4 no longer allows typedefs to be declared as
    a friend class.
dev/pcidev.hh:
    Fix up re-definition of access level to params.
kern/linux/linux_syscalls.hh:
kern/tru64/tru64_syscalls.hh:
    Fix up header.  Fix up template syntax.
sim/serialize.cc:
    Include errno.h.
sim/startup.cc:
    Change startupq.  queue was getting destructed before all things had called ~StartupCallback(), which lead
    to a segfault.  This puts startupq in global space, and we allocate it ourselves.  Other code may be similar
    to this and may need changing in the future.
sim/syscall_emul.hh:
    Include cpu/exec_context.hh and sim/process.hh, as forward declarations are no longer sufficient.
sim/universe.cc:
    Include errno.h

--HG--
extra : convert_revision : e49d08ee89eb06a28351f02bafc028ca6652d5af
2005-01-14 18:34:56 -05:00
Ali Saidi dfecc89150 added stats code to check stability
util/stats/db.py:
    added working listticks (for printing) and retticks(for using in python) code
util/stats/stats.py:
    added stability function that checks if all samples are within 10% of mean.

--HG--
extra : convert_revision : 7eb1714db75e456f248fe7cae73db1c57642947d
2005-01-14 17:50:36 -05:00
Ali Saidi 3e5a3df24f automerged had issues with the options.XXXXX in stats.py
--HG--
extra : convert_revision : 44db6642c1fb46eb515acd5a6d8465859a40891a
2005-01-14 00:05:49 -05:00
Ali Saidi 21c6dd80d7 fix a display bug
add option to limit results to a set of ticks
fix ticks code to work

util/stats/info.py:
    change samples -> ticks and pass all parameters
util/stats/stats.py:
    add option to select a set of ticks and fix display bug

--HG--
extra : convert_revision : eca80a8c6bb75cf82bf1624f3d0170690b2928af
2005-01-13 23:59:39 -05:00
Nathan Binkert 0f0c80ad8c More graph output junk
util/stats/stats.py:
    Add the graphing output for 6GHz and 8GHz runs

--HG--
extra : convert_revision : fae3763c213e4b839735761bf91fa37e1b4f343c
2005-01-12 13:44:47 -05:00
Nathan Binkert ed7926664f Update for newer MySQLdb
util/stats/db.py:
    Update for newer MySQLdb, the result of a blob in a query is an
    array.array now, so we need to convert that to a string

--HG--
extra : convert_revision : 32732983d3d7141755085ec4913fdae057edc67f
2005-01-12 13:41:06 -05:00