Commit graph

1447 commits

Author SHA1 Message Date
Nathan Binkert 884a8de509 Set the proper job name for statistics if we're using a JOBNAME
and JOBFILE

--HG--
extra : convert_revision : 44253a39f40efcbbcda226701b0e97d8ea46cf1e
2005-02-21 18:06:09 -05:00
Nathan Binkert 92ed0dffc0 formatting fixes
--HG--
extra : convert_revision : 8b9bfed29b66e8bce11448f175273f5ebb6876b2
2005-02-21 17:32:57 -05:00
Nathan Binkert 9b1e2db811 Clean up CPU stuff and make it use params structs
cpu/base_cpu.cc:
cpu/base_cpu.hh:
    Convert the CPU stuff to use a params struct
cpu/memtest/memtest.cc:
    The memory tester is really not a cpu, so don't derive from
    BaseCPU since it just makes things a pain in the butt.  Keep
    track of max loads in the memtest class now that the base class
    doesn't do it for us.
    Don't have any default parameters.
cpu/memtest/memtest.hh:
    The memory tester is really not a cpu, so don't derive from
    BaseCPU since it just makes things a pain in the butt.  Keep
    track of max loads in the memtest class now that the base class
    doesn't do it for us.
cpu/simple_cpu/simple_cpu.cc:
    Convert to use a params struct.
    remove default parameters
cpu/simple_cpu/simple_cpu.hh:
    convert to use a params struct
cpu/trace/opt_cpu.cc:
cpu/trace/opt_cpu.hh:
cpu/trace/trace_cpu.cc:
cpu/trace/trace_cpu.hh:
    this isn't really a cpu.  don't derive from BaseCPU
objects/MemTest.mpy:
    we only need one max_loads parameter
sim/main.cc:
    Don't check for the number of CPUs since we may be doing something
    else going on.  If we don't have anything to simulate, the
    simulator will exit anyway.

--HG--
extra : convert_revision : 2195a34a9ec90b5414324054ceb3bab643540dd5
2005-02-19 11:46:41 -05:00
Kevin Lim f4d3f781f1 Include errno.h to fix compile errors in gcc 3.4
sim/main.cc:
    Include errno.h

--HG--
extra : convert_revision : ff91579ae590b3c1d11f7468b71f295e6f3edd68
2005-02-17 19:22:42 -05:00
Nathan Binkert dd4220ec10 rename the simple cpu's multiplier parameter. call it width.
it makes more sense and is less confusing.

cpu/simple_cpu/simple_cpu.cc:
cpu/simple_cpu/simple_cpu.hh:
    width is a better name than multiplier

--HG--
extra : convert_revision : ea2fa4faa160f5657aece41df469bbc9f7244b21
2005-02-17 14:02:03 -05:00
Nathan Binkert cfe6ed7c48 Fix compile on linux
sim/main.cc:
    For some unknown reason linux's basename doesn't take a const char *

--HG--
extra : convert_revision : 30289195881e16a05429f7025abab7914a9e3eb6
2005-02-17 03:40:17 -05:00
Nathan Binkert 5de3bba758 Make code more portable.
sim/main.cc:
    basename is in libgen

--HG--
extra : convert_revision : 1af6ff2f492b4deee9e56edfa5ee6ea235cd4eb0
2005-02-17 02:50:34 -05:00
Nathan Binkert a24016c731 Several tweaks to make binning work in any simulation
configuration so that we can always have binning on.

base/statistics.cc:
    If we're binning, and there is no bin active at the time
    we check all stats stuff, create a bin.
base/statistics.hh:
    FS_MEASURE doesn't exist anymore
base/stats/text.cc:
    don't print out bin names if there is only one bin
sim/process.cc:
    don't zero stats.  It happens automatically.
    Don't activate the context at the time it is registered,
    instead activate the first context in a startup callback.
sim/process.hh:
    Add startup callback to initialize the first exec context

--HG--
extra : convert_revision : bcb23cdb184b0abf7cecd79902f8a59b50f71fe4
2005-02-17 02:48:56 -05:00
Ali Saidi 2e4bb0fc0c Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : c807a78d9c3f3be51763dab9685aa4b7361c585c
2005-02-14 20:47:23 -05:00
Ali Saidi f4e2f0ea33 undoing change per nates request
--HG--
extra : convert_revision : c5c2fd88dfd8d893da51c2b80907260ec14a7593
2005-02-14 20:47:05 -05:00
Nathan Binkert 5e9bc06457 Make it so we append jobs to the joblist in the for loop not
outside of the loop so we get all of the jobs, not just the
last one.

util/pbs/send.py:
    fix indent

--HG--
extra : convert_revision : eee9546b4945ff949fdfdf339fc95a23603b47d3
2005-02-14 20:22:27 -05:00
Ali Saidi b1ab7b53c3 output dir changes to python files
util/pbs/job.py:
    pass output dir to m5 directly

--HG--
extra : convert_revision : 00d1568bb2da3b3e646fc75b4884314bf4cb2d71
2005-02-14 18:54:38 -05:00
Ali Saidi 538d7d19c8 Merge
--HG--
extra : convert_revision : 10c28ac66c7e71615a239783e21ab36a47de992c
2005-02-13 23:05:47 -05:00
Ali Saidi 57482491c5 build mysql version if libraries exist
add dprintf on alignment faults
fix RR benchmark rcS script name
Add Dual test without rcS script
Update Monet to be closer to the real thing
Fix p4/monet configs
Add a way to read the DRIR register with at 32bit access for validation

SConscript:
build/SConstruct:
    always use mysql if the libraries are installed
arch/alpha/alpha_memory.cc:
    Add a DPRINTF to print alignment faults when they happen
dev/tsunami_cchip.cc:
    Add a way to read the DRIR for validation.

--HG--
extra : convert_revision : 8c112c958f36b785390c46e70a889a79c6bea015
2005-02-13 23:03:04 -05:00
Nathan Binkert 10ee909fbd Merge zizzer.eecs.umich.edu:/bk/m5
into ziff.eecs.umich.edu:/z/binkertn/research/m5/merge

--HG--
extra : convert_revision : 5d73046310a64b80a6ba3832df3b30b55532d707
2005-02-11 09:48:23 -05:00
Nathan Binkert 06a4686af9 Rework the command line paramters for python output and how
output files and the output directory are are handled.  Make
the output directory configuration via a command line parameter,
or an environment variable.

SConscript:
    Add new output file stuff
base/misc.cc:
dev/simconsole.cc:
    use new output file code
cpu/base_cpu.cc:
    use new output file code to generate output streams
dev/etherdump.cc:
    use the output file code to find the output directory
    use a real stream instead of a pointer
dev/etherdump.hh:
    use a real stream instead of a pointer
objects/Root.mpy:
    output_dir and config_output_file are not longer configured here.
sim/main.cc:
    - Completely rework the command line argument passing to deal with
    changes in python and output files.
    - Update help output to reflect changes.
    - Remove all direct support for .ini files.  They are strictly
    for intermediate representation.
    - Remove the --foo:bar=blah syntax for .ini files and add --foo.bar=blah
    syntax for python.  This will generate: foo.bar = 'blah' in the python
    script.
    - Add '-d' to set the output directory.
    - Use new output file code to access the output stream.
sim/serialize.cc:
    use the new code to find the output directory
sim/universe.cc:
    Get rid of makeOutputStream.  Use the new output file code.
    Remove output_dir and config_output_file as parameters.

--HG--
extra : convert_revision : df2f0e13d401c3a60cae1239aa1ec3511721544d
2005-02-11 09:47:41 -05:00
Nathan Binkert 60b263466e Make sure we have all values when trying to generate the ini file
sim/pyconfig/m5config.py:
    When getting all values, make sure we get the ones that are
    parameter defaults as well.

--HG--
extra : convert_revision : 2b1c4b2f27dfab17ef9df18d7e5936e4a00bb12e
2005-02-11 01:40:49 -05:00
Nathan Binkert 200246d1ca Some cosmetic changes to MyPOpen
util/pbs/pbs.py:
    More tweaks that I forgot

--HG--
extra : convert_revision : 7298f91b80bc7d8d946be93fc622e5f9f6e155f9
2005-02-10 00:02:51 -05:00
Nathan Binkert 8efd7d9063 More fixes to the pbs stuff to make it more robust.
sim/pyconfig/SConscript:
    Embed the jobfile.py script into the binary so that we don't
    need to copy it into the Base directory every time.
test/genini.py:
    Add the util/pbs directory to the path so we can get to
    jobfile.py
    Add a -I argument to set to add to the path.
util/pbs/pbs.py:
    Create a MyPOpen class.  This is a lot like the popen2.Popen3 class
    in the python library except that my version allows redirection of
    standard in and standard out to a file instead of a pipe.
    Use this popen class to execute qsub or ssh qsub.  This was important
    for the ssh version of qsub because we need to pipe the script into
    standard in of ssh so that the script can get to the qsub command.
    (Otherwise we have a problem discovering the path.)
util/pbs/send.py:
    Tweak the script so it figures out paths in NFS correctly.
    Use the new system for running qsub.

--HG--
extra : convert_revision : 1289915ba99cec6fd464b71215c32d2197ff2824
2005-02-09 23:55:21 -05:00
Nathan Binkert 4a3e33fb6d Fix bug in trace param context so we can compile
--HG--
extra : convert_revision : 667c76132adb143e1f2c0726c80ad3e567a530aa
2005-02-09 22:21:58 -05:00
Nathan Binkert 7fed053beb More fixes for running from anywhere.
util/pbs/send.py:
    always access the job directory via full path

--HG--
extra : convert_revision : 1792aadb39428e7c91953ac58f6da212b7f92835
2005-02-09 18:12:39 -05:00
Nathan Binkert b46baf107f enable the Trace, Statistics, and Serialize param contexts.
objects/Root.mpy:
    Fake the param context stuff for now.
sim/param.cc:
    Make empty vector enums work
sim/serialize.cc:
    serialize_dir is always valid

--HG--
extra : convert_revision : c46373f0f4c70e6a2f01a81c0fa6bacab72d4c4f
2005-02-09 17:33:28 -05:00
Nathan Binkert 061f40df08 Fixes to thes pbs send script
util/pbs/send.py:
    - add a -d to set the job root directory allowing one to run
    send.py from anywhere.
    - specify full paths to files instead of relative paths to make -d
    work and to allow ssh qsub to work again.
    - make the Link directory only copy links that point to regular files.

--HG--
extra : convert_revision : dd330cee08b97c5d72c3d58ef123f83ac7ccede7
2005-02-09 16:20:53 -05:00
Nathan Binkert 26ef1f56c8 Add the split_first and split_last functions on strings.
base/str.cc:
base/str.hh:
    Add a couple functions that allow you to split a string at
    the first or last instance of a delimiter.

--HG--
extra : convert_revision : 2af22639e1b67ac61577c00475a555841a56f902
2005-02-09 13:46:23 -05:00
Nathan Binkert 89ba024b98 Fix the panic message so that it looks more like M5's panic.
Make it so the same path is not added to the system path twice.

--HG--
extra : convert_revision : fe18db38cc4e335ad3525a364e9f8faf62b60e52
2005-02-09 13:41:53 -05:00
Nathan Binkert 6eaa4d3571 fix indent (so emacs and vi aren't screwed up.)
--HG--
extra : convert_revision : 589f37476fec14aa5e3c6e018631e291113d4e69
2005-02-09 13:40:02 -05:00
Nathan Binkert c4089562d5 Tweak genini.
test/genini.py:
    Make it possible to run genini from a different directory.

--HG--
extra : convert_revision : 57cfb010d6114512040bf334ea21c9ed87234be0
2005-02-05 13:50:25 -05:00
Nathan Binkert fc64ab8102 Make pbs submission scripts available to all.
Fix up configuration scrupts to have better support for
running on the simulation pool.

--HG--
extra : convert_revision : 0178c8600b193d6c0ca69163fb735a7fa0e70782
2005-02-05 13:49:17 -05:00
Ali Saidi b78d7c2f16 Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : 0151e501074988eedb52d91254870c265935f229
2005-02-03 23:51:02 -05:00
Ali Saidi 7e559f6c50 Add Monet configuration, update p4 parameters, couple of typo fixes
dev/tsunami_cchip.cc:
    add a fake register to tsunami that we can do 32bit reads to.
    Warn on access.

--HG--
extra : convert_revision : d87860f3b527528151c23431556039bca6e12945
2005-02-03 23:50:57 -05:00
Steve Reinhardt 6dd5509490 Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : aea0708fa6684e3203c03f17e8ae6ae87e893f04
2005-02-03 20:50:07 -05:00
Steve Reinhardt 06bee6397d Minor bug fix/update to tracediff util.
util/tracediff:
    Fix bug (used += instead of .= for string concatenation in Perl...
    wrong language!).

    Also updated for new config (s/Universe/root/).

--HG--
extra : convert_revision : 0db3f22794037dc51cc29f78a75bd22012a8ecd9
2005-02-03 20:49:14 -05:00
Steve Reinhardt 0aaf8ec6b8 Add support for CPU models to execute the effective
address calculation and memory access portions separately.
Not currently used by any CPU models, but Kevin says he needs this.

Also clean up handling of execution tracing for memory accesses
(move it all into isa_desc and out of CPU models).

Got rid of some ancient unused code too.

arch/alpha/isa_desc:
    Add execute() methods to EAComp and MemAcc portions of memory
    access instructions, to allow CPU models to execute the effective
    address calculation and memory access portions separately.

    Requires the execution context to remember the effective address
    across the two invocations.  Added setEA() and getEA() methods to
    execution context to support this.  A model that does not use the
    split execution model can panic if these methods are called.

    Also added hook to call traceData->setAddr() after EA computation
    on any load or store operation.
arch/isa_parser.py:
    Call traceData->setData() on memory writes (stores).
cpu/simple_cpu/simple_cpu.cc:
    Get rid of unused code.
cpu/simple_cpu/simple_cpu.hh:
    Add (non-functional) setEA() and getEA() methods for new
    split memory access execution support.

--HG--
extra : convert_revision : bc2d2c758c4ca753812b9fa81f21038e55929ff0
2005-02-03 20:47:11 -05:00
Nathan Binkert 52403a5ddf get rid of defined and just access the env dict directly
get rid of the alias for true to True and false to False to keep
consistent python syntax.

util/stats/info.py:
    Fix typo

--HG--
extra : convert_revision : e69588a8de52424e043315e70008ca3a3ede7d5b
2005-02-03 17:04:54 -05:00
Nathan Binkert 936ad58402 small python config related fixes.
dev/simconsole.cc:
sim/universe.cc:
    isValid isn't compatible with new python stuff, so whack it.

--HG--
extra : convert_revision : 0c50038769a558650479c51122a8be5d92e7d9c4
2005-02-03 14:33:02 -05:00
Steve Reinhardt 15e1ad8f6b Fix minor doxygen problem.
--HG--
extra : convert_revision : c15b1c5ab1c87b8d1cea87ffa383d1f4d45f107c
2005-02-03 13:10:35 -05:00
Nathan Binkert a736a8fab6 Update config file language to take simobj and no longer use siminst
objects/AlphaConsole.mpy:
objects/AlphaTLB.mpy:
objects/BadDevice.mpy:
objects/BaseCPU.mpy:
objects/BaseCache.mpy:
objects/BaseSystem.mpy:
objects/Bus.mpy:
objects/CoherenceProtocol.mpy:
objects/Device.mpy:
objects/DiskImage.mpy:
objects/Ethernet.mpy:
objects/Ide.mpy:
objects/IntrControl.mpy:
objects/MemTest.mpy:
objects/Pci.mpy:
objects/PhysicalMemory.mpy:
objects/Platform.mpy:
objects/Process.mpy:
objects/Repl.mpy:
objects/Root.mpy:
objects/SimConsole.mpy:
objects/SimpleDisk.mpy:
objects/Tsunami.mpy:
objects/Uart.mpy:
    simobj now requires a type= line if it is actually intended
    to be a type
sim/pyconfig/SConscript:
    keep track of the filename of embedded files for better
    error messages.
sim/pyconfig/m5config.py:
    Add support for the trickery done with the compiler to get the
    simobj language feature added to the importer.

    fix the bug that gave objects the wrong name in error messages.
test/genini.py:
    Globals have been fixed and use execfile

--HG--
extra : convert_revision : b74495fd6f3479a87ecea7f1234ebb6731279b2b
2005-02-02 21:13:01 -05:00
Lisa Hsu 45bb2bf14d some changes for a split lifo in the new python config.
objects/BaseCache.mpy:
    add all the Split parameters to the BaseCache simobj.

--HG--
extra : convert_revision : 4fcba3ce730f730ca8628ac7f4aa0fb9476474ab
2005-02-01 17:35:01 -05:00
Lisa Hsu 38e6d1f782 checking in outstanding changes for partitioning that never made it to the head in my mad prelim rush.
--HG--
extra : convert_revision : 59ca9cca2f2090d234708a695228bf4a91fc5f52
2005-02-01 15:40:02 -05:00
Ali Saidi da269014da removed all tsunami dependence on tlaserreg.h (RTC defines) and
all but tlaser_node.cc dependence on tlaserreg.h

dev/tsunami_io.cc:
dev/tsunamireg.h:
    removed tlaserreg.h

--HG--
extra : convert_revision : 148a5d79530e5ed721a49279f684a48041deed2b
2005-01-30 16:58:39 -05:00
Lisa Hsu c3aaf43c88 make nat runs used vegas congestion avoidance implementation.
--HG--
extra : convert_revision : 29d2c4b70c56f13642466bd88c82f36ba849ed9d
2005-01-28 15:57:40 -05:00
Ali Saidi 2aae3636ee Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : ed089f6062639ae5be930fbaea3dd7f7622653cc
2005-01-27 16:01:32 -05:00
Ali Saidi 7ec713edc8 added support for outputing Dot if pydot is installed
--HG--
extra : convert_revision : bdb1032cddb2478e999399647f893d320260ef7e
2005-01-27 16:01:25 -05:00
Kevin Lim 12ce227f0b Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into zizzer.eecs.umich.edu:/.automount/zamp/z/ktlim2/m5-patched/m5-new

--HG--
extra : convert_revision : 2848966f3daf7aba741d4d38db9c87145d72ee26
2005-01-25 16:27:23 -05:00
Nathan Binkert 534ad6bc7e We need more cshrs so we don't segfault.
--HG--
extra : convert_revision : 54b1987d86e3f307e13de0396cf149653f4f6e6a
2005-01-25 11:15:54 -05:00
Nathan Binkert e8d70bcd45 Fix the stats ParamContext
--HG--
extra : convert_revision : 23e49ca8bd9f50be32a4c28ba435a358d7093f83
2005-01-25 02:02:42 -05:00
Nathan Binkert 8b62d41f11 Fix pc_sample_interval default
--HG--
extra : convert_revision : 553b0489e8b8a83a4e8bbf9601eb82902436c761
2005-01-25 02:00:01 -05:00
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