Commit graph

54 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
Ali Saidi
cd56e4e08e Ability to check formulas
--HG--
extra : convert_revision : 68a2a19cceb4a8cf8a2798ee5c019d25c0fca3cc
2005-01-18 17:55:35 -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
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
Nathan Binkert
ab10712341 stats python fixes for dealing with vectors better. graph tweaking
ipkb stat and formulas from the command line.

util/stats/info.py:
    no need to raise an attribute error if two values aren't found
    in the exact same set of runs.  Would be good to check that each
    run is the same though.
util/stats/stats.py:
    more graph tweaking
    command to execute a formula from the command line.
    add interrupts per kilobyte of data

--HG--
extra : convert_revision : 78d6b14d340d08edcbc69e4c1c5a4c1dd9bb10dd
2004-11-18 16:23:29 -05:00
Nathan Binkert
ee962a6b0b Fix some commands.
util/stats/stats.py:
    we only need the system if we're issuing one of the commands that
    uses a stored formula.

--HG--
extra : convert_revision : d129a00eeba46a03f7d600922d679aa0f43636be
2004-11-17 00:03:59 -05:00
Nathan Binkert
10e88b43fd Fix more of the stats python stuff
util/stats/info.py:
    Make the binnings stuff work again.
util/stats/stats.py:
    small patch for graphing
    make it so we can print out bins for the stat command

--HG--
extra : convert_revision : c0279ac7030fd5146dd00801baa41e7baf97d1f4
2004-11-15 01:36:27 -05:00
Nathan Binkert
9d80d88a71 update graph generating code
util/stats/stats.py:
    tweak the graphing stuff for the new configurations we have.
    add more graph types.
    nsgige -> etherdev
    deal with memory hierarchy change by using L2 instead of L3

--HG--
extra : convert_revision : 55362e79d9f8d0d68aa08129f5af944b378a9f4c
2004-11-14 17:22:33 -05:00
Steve Reinhardt
40c665dd7b Major documentation update for 570 F04.
sim/main.cc:
    Get rid of default.ini processing... it's kind of a pain and nobody uses it.
util/tracediff:
    Add comments on usage.

--HG--
extra : convert_revision : b811288b2945585d60685684ea88c99d1913fbf3
2004-10-27 22:37:52 -04:00
Nathan Binkert
a40715c98d fix the options stuff
util/stats/stats.py:
    get the options from the options struct now
    gratuitously change the output directory for graphs.

--HG--
extra : convert_revision : 468f34bdc2c8b5fc3a393eaa4da4ec288e35c8c7
2004-09-10 14:34:23 -04:00
Ali Saidi
7a1f4969ca added nate's memtest code to devtime
util/ccdrv/devtime.c:
    incorperated nate's changes for memory testing.

--HG--
extra : convert_revision : 6c479dd6b9a79659bb4cfd3e03b794909b14db3b
2004-08-18 23:12:16 -04:00
Nathan Binkert
2771abb6ed 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
2004-08-09 21:20:52 -04:00
Steve Reinhardt
d7dfe51fae 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
2004-08-05 02:03:47 -07:00
Nathan Binkert
195768d476 put the formatting fixes back into devtime
util/ccdrv/devtime.c:
    put the formatting fixes back.  no tabs.

--HG--
extra : convert_revision : 541e91294ee5383f3b321dd084876ae7c353cce9
2004-07-12 23:01:53 -04:00
Ali Saidi
c2e5caf360 modified devtime to print out raw data
--HG--
extra : convert_revision : 5ad673d6f684acaffeb61db794f7e2ac099ba99d
2004-07-12 22:51:20 -04:00
Nathan Binkert
ef16b46484 formatting
--HG--
extra : convert_revision : cbd0c148a50643191372fdba2f771d7e145f1bff
2004-07-12 22:33:27 -04:00
Ali Saidi
fe3a86e2ef 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
2004-07-05 16:49:56 -04:00
Ali Saidi
3512904c74 Added code to read any location in memory a repetative number of and
average the results.

It works on alpha but I haven't got it working on x86 I think for
lack of knowing a good address to read.

--HG--
extra : convert_revision : e2442de641741674d692245712aa92e258cf6d48
2004-07-05 15:49:42 -04:00
Steve Reinhardt
1c782ad134 Minor restructuring of Python config code, mostly to avoid walking
the source tree for *.odesc files every time we run the script.
This is now factored out into load_odesc.py, which should be used
to generate m5odescs.py, which is then used as the source of object
& parameter definitions.

util/config/m5configbase.py:
    - Move odesc loading code to separate load_odescs.py, so maybe someday
    that can be done once at build time.
    - Print out children of a node in the order they are added.
    - Automatically assign a parent-less node to the first node for which it
    is used as the value of a parameter.  (Easier demonstrated than explained.)
    - Calculate object paths dynamically when requested rather than trying
    to keep them up to date as objects get assigned to parents.

--HG--
rename : util/config/m5config.py => util/config/m5configbase.py
extra : convert_revision : 2183a09d32f3862ab377e0a929715f30505a03cb
2004-06-09 20:46:29 -07:00
Steve Reinhardt
d66ae60f6b Very minor fixes.
util/tracediff:
    stats:file option is now stats:text_file

--HG--
extra : convert_revision : 74b6294da0003345e84bc1533d536dab271b6033
2004-05-08 23:32:30 -07:00
Steve Reinhardt
d85b26d65a Minor enhancements to Python config stuff:
- Add support for assigning NULL to SimObject pointers.  In Python,
this is a special value, distinct from None.
- Initial, incomplete pass at regenerating C++ parameter code (declarations
and INIT_PARAM macros) from .odesc files.

util/config/m5config.py:
    - Add support for assigning NULL to SimObject pointers.  In Python,
    this is a special value, distinct from None.
    - Initial, incomplete pass at regenerating C++ parameter code (declarations
    and INIT_PARAM macros) from .odesc files.

--HG--
extra : convert_revision : d7ae8f32e30b3c0829fd1a60589dd998e2e0d0d7
2004-04-28 16:28:37 -07:00
Steve Reinhardt
d4069233eb Beta version of Python configuration tool. Generates .ini files from
Python script description.

arch/alpha/alpha_memory.cc:
dev/io_device.cc:
    Add DEFINE_SIM_OBJECT_CLASS_NAME for intermediate SimObjects.
test/paramtest.cc:
    Fix stupid spelling.

--HG--
extra : convert_revision : dc020208cb6507c1afb1ed771a7218daba678e09
2004-04-06 10:02:00 -07:00
Nathan Binkert
97c11561ff Don't indent namespaces because it just wastes space
--HG--
extra : convert_revision : 2236838a40bf77689a3d75df718c0da410c3fbb6
2004-03-24 10:25:18 -05:00
Steve Reinhardt
f9c91277f3 Quote args properly in tracediff.
util/tracediff:
    Quote simulator args so args with spaces get handled correctly.

--HG--
extra : convert_revision : b48677bc712be17e6e50ca35680e757ba9364692
2004-02-23 08:07:32 -08:00
Steve Reinhardt
d5a187dd5a Miscellaneous minor fixes/improvements.
Most notable is that the rundiff trace-output lossage is fixed!

base/pollevent.cc:
    Use SA_RESTART to keep blocked write() calls from failing
    with EINTR when signals happen.
base/trace.hh:
    Make TRACING_ON depend on NDEBUG not being set (instead of
    DEBUG being set) so m5.opt/m5.fast do what we want.
util/rundiff:
    Print header lines showing file/cmd names.

--HG--
extra : convert_revision : 4966814ad65aedb6d62a5a62a6ad3e3f326d61b8
2003-12-17 09:43:03 -08:00
Steve Reinhardt
d0feece6e0 Minor enhancements to rundiff.
util/rundiff:
    Dump buffered lines on loss of sync so we see where things went wrong.
    Also return proper exit code from checkmatch() function.

--HG--
extra : convert_revision : cd88064ee784a50b675bf3fededbb3901c3c266c
2003-12-15 20:58:18 -08:00
Steve Reinhardt
7651e19cd1 Minor enhancements to rundiff script.
util/rundiff:
    Make sure Algorithm::Diff is loaded only if you need it
    (so it's ok if you don't have it installed).
    Add command-line options for things you might want to change:
    - diff algorithm
    - # of context lines
    - # of lines of lookahead

--HG--
extra : convert_revision : b3ba02e1816eee286f47eb28ab578fa4734bac3a
2003-11-09 20:36:54 -08:00
Erik Hallnor
aead4c315b Various fixes to memory code.
cpu/memtest/memtest.cc:
    Disable probes until the work in all cases
util/rundiff:
    Comment out Algorithm::Diff since its not needed.

--HG--
extra : convert_revision : 40e76ae8926650986a170a0ba6ef331519aceb19
2003-11-06 18:39:26 -05:00
Nathan Binkert
03ef1a0c09 If a filter isn't specified, don't try to do any filtering
If pcap_lookupnet fails, just assume the netmask is 0xffffff00
that's all we really wanted from it anyway.

--HG--
extra : convert_revision : ac0a390ddb7a6b0a4e4c6d2885bfa7bd059faf36
2003-11-02 02:13:04 -05:00
Nathan Binkert
1cd3757db9 add several new functions that can be called from the guest
to tell the simulator to do something.
exit -> exit_old (deprecated
exit now takes an optional parameter that tells it to execute at a
specified time in the future

The next four functions have two optional parameters.  The first
specifies a delay for how long to wait to issue the instruction.
The second will tell the simulator to repeat that command
at the specified interval.

checkpoint will trigger a checkpoint
dumpstats will cause the simulator to dump stats
resetstats will cause all stats to be reset
dumpreset will dump and reset stats


all times are in nanoseconds

util/m5/Makefile:
    Clean up to make it a bit easier to muck with
util/m5/m5.c:
    Add a bunch of new commands and clean up the command parsing path
    Convert atoi to strtoul so that we can use 64bit numbers and even
    hex if we want to.  (this runs on alpha, so a long is 64bit)
util/m5/m5op.h:
    add prototypes for new m5 instructions
    use uint64_t since it's nicer

--HG--
extra : convert_revision : 664ff00f0f0dfc5263c4e873d82fd9996a4521e9
2003-11-02 01:08:59 -05:00
Nathan Binkert
c4dd30662b Licenses
--HG--
extra : convert_revision : ce47fdfaa5c59480a1fb38d86eed7d16ab7b5fc1
2003-11-01 14:11:29 -05:00
Nathan Binkert
15613161c2 Commit a command for use inside a simulated system for communicating
with the simulator.  This program is generally compiled as the name
m5 and installed in /usr/local/bin

This command uses opcodes that are invalid on a normal system, so
don't expect it to do anything on a real system.

--HG--
extra : convert_revision : fcbae99d4b0d38ff4a9950f1ab53923baa1f667a
2003-11-01 13:20:44 -05:00
Steve Reinhardt
217ad63b4d New tracediff script for invoking rundiff on two copies of the simulator.
--HG--
extra : convert_revision : a399fd95fe57a3f9247a2675c363e6d3cc953a7e
2003-10-30 07:01:46 -08:00
Nathan Binkert
91293e02d2 Make the tap work work again
util/tap/Makefile:
    Make this stuff compile again
util/tap/tap.cc:
    clean up some of the error messages

--HG--
extra : convert_revision : 4543d946b48c9e07bf19b812db6466f80ed6b851
2003-10-26 22:40:03 -05:00
Steve Reinhardt
a08271f955 New rundiff script.
util/rundiff:
    Completely rewritten from scratch.  Can work standalone (with simple built-in
    diff algorithm) or use Algorithm::Diff package for better (but slower) diffs.

--HG--
extra : convert_revision : bb66d937e92bfd1904bd259589bacb5eff404c02
2003-10-25 20:49:08 -07:00
Steve Reinhardt
789a2de6f8 Check in a first stab at a script to sort the #include lines in a source file.
Nate thought this would be cool, and I started on it, but lost interest.
I'm mostly committing this so bk stops bugging me about it.  Nate, don't start
hacking on this until after the ISCA deadline!

--HG--
extra : convert_revision : e0ecc54b118ee99d254e9707b1bba11d4078d7e0
2003-10-19 17:42:51 -07:00
Nathan Binkert
8dd080032b Global whitespace fixes
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
2003-10-15 16:39:37 -04:00