gem5.git
18 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Sun, 20 Nov 2005 23:25:43 +0000 (18:25 -0500)]
Merge zizzer.eecs.umich.edu:/bk/m5
into  ziff.eecs.umich.edu:/z/binkertn/research/m5/head

--HG--
extra : convert_revision : 941e76e4645a4a18c04409250f3257e590184871

18 years agobetter placement of database commits
Nathan Binkert [Sun, 20 Nov 2005 23:25:31 +0000 (18:25 -0500)]
better placement of database commits
better mysql error messages

base/stats/mysql.cc:
    better placement of commit() calls to avoid failing transactions
    due to what I think are timeouts.
    print out the mysql error with every panic

--HG--
extra : convert_revision : bfc5ae172bcff733461adceffe2b381601839e82

18 years agoFor SimpleCPU profiling code, only update the exec context's
Nathan Binkert [Sun, 20 Nov 2005 22:55:11 +0000 (17:55 -0500)]
For SimpleCPU profiling code, only update the exec context's
profileNode if we got a new one

cpu/simple/cpu.cc:
    Only update the exec context's profileNode if we got a new one

--HG--
extra : convert_revision : a16a7410070b0d811032dc4b86b1368df913b2be

18 years agoCleanup the StackTrace interfaces and profile interfaces so they
Nathan Binkert [Sun, 20 Nov 2005 22:44:58 +0000 (17:44 -0500)]
Cleanup the StackTrace interfaces and profile interfaces so they
are more efficient and reduce the number of new/delete calls

arch/alpha/stacktrace.cc:
    - Change the StackTrace code so that the class can more easily be
    cleaned out and reused to avoid extra allocations.
    - Allow trace() to accept a static instruction pointer so it can
    determine if the instruction is worth tracing.  This is moved from
    the CPU.
    - provide constants for special meaning PCs (user, console, unknown),
    instead of magic numbers
    - switch to using kernelSymtab instead of allSymtab which will be
    going away
    - if the stack adjustment doesn't make any sense, exit and push
    unknown so we don't get into an infinite loop or record garbage.
    - check to see if we've made too many iterations through the stack
    and panic to avoid an infinite loop
arch/alpha/stacktrace.hh:
    - Change the StackTrace code so that the class can more easily be
    cleaned out and reused to avoid extra allocations.
    - Allow trace() to accept a static instruction pointer so it can
    determine if the instruction is worth tracing.  This is moved from
    the CPU.
    - provide constants for special meaning PCs (user, console, unknown),
    instead of magic numbers
cpu/base.cc:
    only clear the profile if we have one
    include profile.hh here since base.hh doesn't do it anymore
cpu/base.hh:
    no need to include cpu/profile.hh here
cpu/profile.cc:
    use ProfileNode pointers instead of objects in the ChildList
    Consume a vector of addresses since that's really all we
    care about.
cpu/profile.hh:
    Keep pointers to ProfileNodes to reduce the size of these structures
    keep a StackTrace around so that we may reuse it.
    provide consume functions that use the new StackTrace trace interface
    one consume function is inline and tries to fastpath the no trace
    condition, it calls the outlined consume function if a trace is generated.
cpu/simple/cpu.cc:
    include cpu/profile.hh here since base.hh no longer does
    use the new FunctionProfile::consume interface
    (which contains the tracing functions)

--HG--
extra : convert_revision : 5a1d9265289a75f67a497b322926be1f8c2d8eb3

18 years agoremove duplicate profile event code that is already in
Nathan Binkert [Sun, 20 Nov 2005 22:28:57 +0000 (17:28 -0500)]
remove duplicate profile event code that is already in
the BaseCPU class

--HG--
extra : convert_revision : fb400e243377840006a36c3274115006f8cd2e3d

18 years agoio_bus is split out into pio_bus and dma_bus so that any device
Nathan Binkert [Sun, 20 Nov 2005 21:57:53 +0000 (16:57 -0500)]
io_bus is split out into pio_bus and dma_bus so that any device
can specify either independently.

python/m5/objects/Device.py:
    io_bus is split out into pio_bus and dma_bus so that any device
    can specify either independently.
    dma_bus defaults to point to whatever pio_bus uses.

--HG--
extra : convert_revision : d35d5374d0bf592f6b5df465c05203577b8b8763

18 years agoadd symbol opcode
Ali Saidi [Sat, 19 Nov 2005 06:25:34 +0000 (01:25 -0500)]
add symbol opcode

--HG--
extra : convert_revision : e050d2c4fec33c41ac21b6f17b3be329b9521429

18 years agoAdd checktrace.sh. Checks all the ethertrace files in */ethertrace
Ali Saidi [Fri, 11 Nov 2005 23:43:09 +0000 (18:43 -0500)]
Add checktrace.sh. Checks all the ethertrace files in */ethertrace
for retransmissions, out of order packets, lost packets, duplicate
ack, window full, etc. Easy way to see if you have a problem with a
run.

--HG--
extra : convert_revision : 95d8e8650b0fb3d120df107cd5281c56fefc3a1d

18 years agoUpdate random come to always have explict min/max
Ali Saidi [Fri, 11 Nov 2005 23:41:45 +0000 (18:41 -0500)]
Update random come to always have explict min/max

--HG--
extra : convert_revision : a2d1f6f8aa1df24ea524792f687f4d3ee31101f0

18 years agoActually free Process fd_map entries when a file is closed...
Steve Reinhardt [Fri, 11 Nov 2005 02:08:33 +0000 (21:08 -0500)]
Actually free Process fd_map entries when a file is closed...
amazingly we never did that before.  Caused us to run out of
file descriptors in twolf.

sim/process.cc:
    Add free_fd() method to free closed target fd in simulator fd map.
    Rename open_fd() to alloc_fd() for symmetry with free_fd().
sim/process.hh:
    Add free_fd() method to free closed target fd in simulator fd map.
    Rename open_fd() to alloc_fd() for symmetry with free_fd().
    Crank up MAX_FD while we're at it.
sim/syscall_emul.cc:
    Call free_fd() on process when target closes a file.
sim/syscall_emul.hh:
    Process open_fd() renamed to alloc_fd().

--HG--
extra : convert_revision : d780f4ccfd5a0989230b0afbdbd276212b87550c

18 years agoSyscall DPRINTF and warning cleanup.
Steve Reinhardt [Fri, 11 Nov 2005 02:05:31 +0000 (21:05 -0500)]
Syscall DPRINTF and warning cleanup.

base/trace.hh:
    Need std:: on DPRINTFR reference to string class.
base/traceflags.py:
    Remove SyscallWarnings trace flag... we should always print warnings
    so nothing undesirable goes unnoticed.  Replaced with (currently unused)
    Syscall flag.
sim/syscall_emul.cc:
    Change SyscallWarning DPRINTFs into warn() calls.
    Uncomment SyscallVerbose DPRINTFs.
sim/syscall_emul.hh:
    Change SyscallWarning DPRINTFs into warn() calls.
    Call fatal() instead of ad-hoc termination.

--HG--
extra : convert_revision : dc6c2ce3691a129f697b6a6ae5d889e2dbaab228

18 years agoFix Lisa's CPU trace system check for syscall emulation.
Steve Reinhardt [Fri, 11 Nov 2005 01:30:04 +0000 (20:30 -0500)]
Fix Lisa's CPU trace system check for syscall emulation.

cpu/exetrace.cc:
    CPU system name check doesn't work under syscall emulation, so don't
    compile it in.

--HG--
extra : convert_revision : 2c128bf759877222107652fd86323be6dc71a34c

18 years agojust commit what i need for dumping traces compatible with intel's casper
Lisa Hsu [Wed, 9 Nov 2005 21:42:36 +0000 (16:42 -0500)]
just commit what i need for dumping traces compatible with intel's casper

--HG--
extra : convert_revision : a0c4a68a576fa771fd553eaedd6a07255a04dca2

18 years agoMerge zizzer:/bk/m5
Lisa Hsu [Wed, 9 Nov 2005 21:40:51 +0000 (16:40 -0500)]
Merge zizzer:/bk/m5
into  zed.eecs.umich.edu:/z/hsul/work/m5/intel

--HG--
extra : convert_revision : 729be2b6686f46f70440d258383180078c6b046c

18 years agonew rcS file for open-iscsi rather than the old linux-iscsi
Lisa Hsu [Wed, 9 Nov 2005 21:40:27 +0000 (16:40 -0500)]
new rcS file for open-iscsi rather than the old linux-iscsi

--HG--
extra : convert_revision : 0c12033b38e32f8b2ea69b52813dfed294ec5de4

18 years agoA couple of FP-related fixes (prompted by Adam having trouble
Steve Reinhardt [Wed, 9 Nov 2005 14:52:07 +0000 (09:52 -0500)]
A couple of FP-related fixes (prompted by Adam having trouble
running SPEC FP codes).

arch/alpha/isa_desc:
    Don't warn about non-standard trapping modes more than
    once per static instruction.  (Had the flag to suppress
    these but forgot to check it!)
build/SConstruct:
    Add USE_SSE2 option to enable compiling w/SSE2 (important
    for getting IEEE-compliant FP on x86).

--HG--
extra : convert_revision : eac69efb28cce7b48035480d8b7cb004782969f4

18 years agoQdo should kill its subordinate qsub more aggressively
Steve Reinhardt [Thu, 3 Nov 2005 18:14:28 +0000 (13:14 -0500)]
Qdo should kill its subordinate qsub more aggressively
on a timeout.

util/qdo:
    Qsub needs a kill -9 to die; kill -15 doesn't cut it.

--HG--
extra : convert_revision : 7696b3ecf1a084b68dd909b138ab6aa1b380b5a7

18 years agoCheck for MySQL 4.1 or newer only
Steve Reinhardt [Thu, 3 Nov 2005 18:13:31 +0000 (13:13 -0500)]
Check for MySQL 4.1 or newer only
(3.23 does not work as we supposed it did).

--HG--
extra : convert_revision : d87dbebe0b2387fde1f8aba52625d115d31baf1a

18 years agoallow conversion floats -> long so that 100e9 and such work as Ticks
Ali Saidi [Wed, 2 Nov 2005 20:37:47 +0000 (15:37 -0500)]
allow conversion floats -> long so that 100e9 and such work as Ticks

--HG--
extra : convert_revision : 23511baca6153bb3aa9c57be8818ad1b65f02a71

18 years agoDon't call Random.uniform() unnecessarily
Ali Saidi [Wed, 2 Nov 2005 20:29:08 +0000 (15:29 -0500)]
Don't call Random.uniform() unnecessarily

--HG--
extra : convert_revision : 82b092391f7c866f33ddb028070181038bdce0f8

18 years agoI left a printf in on accident.
Ali Saidi [Wed, 2 Nov 2005 20:23:21 +0000 (15:23 -0500)]
I left a printf in on accident.

--HG--
extra : convert_revision : 5a5c0a8c28153f4cf4c3dbebd8f75096e4c4ea94

18 years agoChanges to integer types broke this... Oops.
Ali Saidi [Wed, 2 Nov 2005 20:22:09 +0000 (15:22 -0500)]
Changes to integer types broke this... Oops.

--HG--
extra : convert_revision : e0ed251f4d75b5bf313a72772afed668fb7e38d2

18 years agoMerge zizzer:/bk/m5
Ali Saidi [Wed, 2 Nov 2005 19:56:18 +0000 (14:56 -0500)]
Merge zizzer:/bk/m5
into  zeep.eecs.umich.edu:/z/saidi/work/m5

--HG--
extra : convert_revision : 3cc23080d19cc464a8ba7c1c93b6e5d45af7d463

18 years agoChange the output of stability info a little bit
Ali Saidi [Wed, 2 Nov 2005 19:55:05 +0000 (14:55 -0500)]
Change the output of stability info a little bit

--HG--
extra : convert_revision : bc467a40593234a1e3b694a741b4a7c2154a95ea

18 years agoadd a few more options to the help menu
Ali Saidi [Wed, 2 Nov 2005 19:54:21 +0000 (14:54 -0500)]
add a few more options to the help menu

--HG--
extra : convert_revision : b2481bedac786e4a6bb0d577954242d7f4c144a0

18 years agoDon't bother putting distributions in the DB, they aren't really
Ali Saidi [Wed, 2 Nov 2005 19:48:49 +0000 (14:48 -0500)]
Don't bother putting distributions in the DB, they aren't really
supported.

--HG--
extra : convert_revision : a732fa169962632937ace368430cb3733c0e3cc6

18 years agoAdd ability to slightly perturb latency of ethernet/memory
Ali Saidi [Wed, 2 Nov 2005 19:47:37 +0000 (14:47 -0500)]
Add ability to slightly perturb latency of ethernet/memory

base/random.cc:
    Change normal random function to Xrand48 so we have one source of
    randomness for everything.
base/random.hh:
    Add uniform distribution ability to random functions
dev/etherlink.cc:
dev/etherlink.hh:
    Add ability to slightly perturb latency of ethernet

--HG--
extra : convert_revision : f7f856761fd525c233ae2a6d993b1fd702b488f7

18 years agoFix bug where simulation terminates same cycle as last stat dump causing a duplicate...
Ali Saidi [Wed, 2 Nov 2005 19:45:35 +0000 (14:45 -0500)]
Fix bug where simulation terminates same cycle as last stat dump causing a duplicate row in db

--HG--
extra : convert_revision : 45877c6feeaddf921eb0f4764246bf66e1705a1d

18 years agoAdd Mem/Ethernet latency variability parameter
Ali Saidi [Wed, 2 Nov 2005 19:44:42 +0000 (14:44 -0500)]
Add Mem/Ethernet latency variability parameter

python/m5/objects/Ethernet.py:
    Add Latency Variability Parameter

--HG--
extra : convert_revision : db5431cccffea8c7247d0f72e4770d4d58bd25aa

18 years agoUpdate monet configuration files
Ali Saidi [Wed, 2 Nov 2005 19:43:35 +0000 (14:43 -0500)]
Update monet configuration files

--HG--
extra : convert_revision : 0cdfa6c5d57b7607c97b2ed08dff88e1b961718c

18 years agoSimple updates to pbs and send.py
Nathan Binkert [Wed, 2 Nov 2005 17:19:08 +0000 (12:19 -0500)]
Simple updates to pbs and send.py

util/pbs/pbs.py:
    Change the default so that we do not get mail under any circumstances
    from pbs.
util/pbs/send.py:
    Add a -n flag to send.py that causes the Base directory to *not*
    sync with the Link directory

--HG--
extra : convert_revision : 6e872153b6b2c34b61ec2ddbf3e5536876f4b43b

18 years agosilence g++ warning
Nathan Binkert [Wed, 2 Nov 2005 17:16:19 +0000 (12:16 -0500)]
silence g++ warning

--HG--
extra : convert_revision : 27226b774e0f0273e238d062241f4581c9bb1639

18 years ago__init__ should not return anything
Nathan Binkert [Wed, 2 Nov 2005 17:14:26 +0000 (12:14 -0500)]
__init__ should not return anything

--HG--
extra : convert_revision : fb46eee741f4899d76bcf927523fa151d002decf

18 years agoMake vector params interact with proxies properly.
Steve Reinhardt [Wed, 2 Nov 2005 15:20:39 +0000 (10:20 -0500)]
Make vector params interact with proxies properly.

--HG--
extra : convert_revision : a4067f07d71d2adc1ccbf4512a43ceee7b5cc3de

18 years agoAllow math on CheckedInt-derived ParamValue classes w/o
Steve Reinhardt [Tue, 1 Nov 2005 19:11:54 +0000 (14:11 -0500)]
Allow math on CheckedInt-derived ParamValue classes w/o
losing type information.

python/m5/config.py:
    Allow math on CheckedInt-derived ParamValue classes w/o
    losing type information.
    - Make CheckedInt derive from NumericParamValue, and *not*
    multiply inherit from long
    - Move CheckedInt bounds check to _check() hook so we can
    call it when value is updated (not just in constructor)
python/m5/convert.py:
    - make toInteger() return a long, making toLong() unnecessary
    - toMemorySize should return long rather than float

--HG--
extra : convert_revision : c1cf5e15b9ff35d9b573dd545e076fe68afef989

18 years agoMinor fix for test/genini.py.
Steve Reinhardt [Tue, 1 Nov 2005 03:41:14 +0000 (22:41 -0500)]
Minor fix for test/genini.py.

test/genini.py:
    Use m5execfile to execute .py files so that sys.path gets handled correctly.

--HG--
extra : convert_revision : 8d8c90a7f40d51c95ba0f43bb9f6d7b2ee49f16e

18 years agoMerge zizzer:/bk/m5
Lisa Hsu [Thu, 27 Oct 2005 03:19:32 +0000 (23:19 -0400)]
Merge zizzer:/bk/m5
into  zed.eecs.umich.edu:/z/hsul/work/m5/clean

--HG--
extra : convert_revision : 8935c26cbf6cafd9c0f76783605c137f5a74e897

18 years agoadd in the files to the SConscript for split caches
Lisa Hsu [Thu, 27 Oct 2005 03:19:21 +0000 (23:19 -0400)]
add in the files to the SConscript for split caches

--HG--
extra : convert_revision : aba28067abbb515eaa20a4d3303db19ac077777f

18 years agoFix qdo job name setting.
Steve Reinhardt [Mon, 24 Oct 2005 02:18:50 +0000 (22:18 -0400)]
Fix qdo job name setting.

util/qdo:
    Don't automatically set qsub job name, as this causes qsub to fail
    if the job name is too long or otherwise unsuitable.

--HG--
extra : convert_revision : 5ba48767574efaaff2c328549adee295780f7f70

18 years agoMajor changes to sinic device model. Rearrage read/write, better
Nathan Binkert [Sat, 22 Oct 2005 00:28:21 +0000 (20:28 -0400)]
Major changes to sinic device model. Rearrage read/write, better
interrupts.

dev/sinic.cc:
    - The prepareRead function sets all the variables in the register
    file that depend on various state bits that change on the fly.
    Includes RxDone, RxWait, TxDone, and TxWait
    - Use the new register information accessor functions to grab
    validity and size information for the read and write functions
    - read all registers directly from the register space by offset
    and size, not by actual name (less code)
    - The side effect of reading the interrupt status (clearing it) now
    happens outside the actual chunk of code where the value is loaded.
    - Add an iprRead function for when we may want speculative access
    to device registers through an ipr or special instruction.
    - When RxData or TxData are written, their busy flag is set to
    indicate that they have an outstanding transaction.
    - The RxHigh and TxLow interrupts are special, they only interrupt
    if the rxEmpty or txFull limits were hit
    - Move reset to the command register
    - Update more registers on reset, clear rxEmpty and txFull
    - Data dumps only happen if EthernetData trace flag set
    - When a DMA completes, kick the other engine if it was waiting
    - implement all of the new interrupts
    - serialize the new stuff
dev/sinic.hh:
    - Put all registers with their proper size and alignment into
    the regs struct so that we can copy multiple at a time.
    - Provide accessor functions for accessing the registers with
    different sizes.
    - Flags to track when the rx fifo hit empty and the tx fifo became
    full.  These flags are used to determine what to do when below
    the watermarks, and are reset when crossing the watermark.
    - the txDmaEvent should actually trigger the txDmaDone function
    - Add an iprRead function for when we may want speculative access
    to device registers through an ipr or special instruction.
    - The prepareRead function sets all the variables in the register
    file that depend on various state bits that change on the fly.
    - add rx_max_intr and dedicated (for dedicated thread) config params
dev/sinicreg.hh:
    Add some new registers: Command, RxMaxIntr, RxFifoSize, TxFifoSize,
    rename XxThreshold to XxFifoMark
    Move Reset to the Command register
    Add Thread to the Config register
    New interrupts, better names
    More info in RxDone and TxDone
    Easier access to information on each register (size, read, write, name)
python/m5/objects/Ethernet.py:
    Both sinic and nsgige have the dedicated thread
    Add a parameter to configure the maximum number for receive
    packets per interrupt

--HG--
extra : convert_revision : 407c5a993b6fb17326b4c623ee5d4b25fd69ac80

18 years agomissed another pio interface name
Nathan Binkert [Fri, 21 Oct 2005 23:38:02 +0000 (19:38 -0400)]
missed another pio interface name

dev/sinic.cc:
    better name for both pio interfaces

--HG--
extra : convert_revision : f7821c9c28b0095b366177b4c48a4ec14c3c89ee

18 years agobetter naming for pio interfaces
Nathan Binkert [Fri, 21 Oct 2005 23:35:49 +0000 (19:35 -0400)]
better naming for pio interfaces

dev/ns_gige.cc:
    why call it pio2 when there's only one?
dev/sinic.cc:
    Give the interface a different name for stats/output purposes

--HG--
extra : convert_revision : 895732f1a7e4c53e058a42b51320c2115dc05638

18 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Fri, 21 Oct 2005 23:18:28 +0000 (19:18 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into  ziff.eecs.umich.edu:/z/binkertn/research/m5/head

--HG--
extra : convert_revision : 35075f75f7e31e0500b964ec45db3019eea06c76

18 years agoIt's not necessary for a device to call recvDone, that
Nathan Binkert [Fri, 21 Oct 2005 23:18:19 +0000 (19:18 -0400)]
It's not necessary for a device to call recvDone, that
automatically happens in the interface after the packet
is delivered to the device.

--HG--
extra : convert_revision : 07890c4c5ce83fe709ce203f66c330d7cd631235

18 years agoFix a couple of bug in the values() vector accessor
Nathan Binkert [Fri, 21 Oct 2005 21:28:47 +0000 (17:28 -0400)]
Fix a couple of bug in the values() vector accessor

util/stats/db.py:
    need to import the values function
util/stats/info.py:
    it's just run

--HG--
extra : convert_revision : 3cb67d8112a1a5fdf761b73732859a71f585bd1f

18 years agoMinor updates to the profile code.
Nathan Binkert [Fri, 21 Oct 2005 20:32:48 +0000 (16:32 -0400)]
Minor updates to the profile code.

util/stats/profile.py:
    Pass around the number of symbols limit
    deal with categorization a bit better.

--HG--
extra : convert_revision : 908410e296efd4514f2dfc0eb9e6e42834585560

18 years agoMerge zizzer.eecs.umich.edu:/bk/m5
Nathan Binkert [Fri, 21 Oct 2005 20:29:27 +0000 (16:29 -0400)]
Merge zizzer.eecs.umich.edu:/bk/m5
into  zizzer.eecs.umich.edu:/.automount/ziff/z/binkertn/research/m5/work

--HG--
extra : convert_revision : 8ef6ed2d770d45ac11d44a449e2c4f74ef656d87

18 years agoMajor cleanup of the statistics handling code
Nathan Binkert [Fri, 21 Oct 2005 20:29:13 +0000 (16:29 -0400)]
Major cleanup of the statistics handling code

util/stats/db.py:
    Build a result object as the result of a query operation so it is
    easier to populate and contains a bit more information than just
    a big dict.  Also change the next level data into a matrix instead
    of a dict of dicts.
    Move the "get" function into the Database object.  (The get function
    is used by the output parsing function as the interface for accessing
    backend storage, same interface for profile stuff.)
    Change the old get variable to the method variable, it describes how
    the get works, (whether using sum, stdev, etc.)
util/stats/display.py:
    Clean up the display functions, mostly formatting.
    Handle values the way they should be now.
util/stats/info.py:
    Totally re-work how values are accessed from their data store.
    Access individual values on demand instead of calculating everything
    and passing up a huge result from the bottom.
    This impacts the way that proxying works, and in general, everything
    is now esentially a proxy for the lower level database.  Provide new
    operators: unproxy, scalar, vector, value, values, total, and len which
    retrieve the proper result from the object they are called on.
    Move the ProxyGroup stuff (proxies of proxies!) here from the now gone
    proxy.py file and integrate the shared parts of the code.  The ProxyGroup
    stuff allows you to write formulas without specifying the statistics
    until evaluation time.

    Get rid of global variables!
util/stats/output.py:
    Move the dbinfo stuff into the Database itself.  Each source should
    have it's own get() function for accessing it's data.
    This get() function behaves a bit differently than before in that it
    can return vectors as well, deal with these vectors and with no result
    conditions better.
util/stats/stats.py:
    the info module no longer has the source global variable, just
    create the database source and pass it around as necessary

--HG--
extra : convert_revision : 8e5aa228e5d3ae8068ef9c40f65b3a2f9e7c0cff

18 years agoMinor tweak to isa_parser.
Steve Reinhardt [Thu, 20 Oct 2005 18:14:59 +0000 (14:14 -0400)]
Minor tweak to isa_parser.

arch/isa_parser.py:
    Derive Stack class directly from list.

--HG--
extra : convert_revision : 4f09db4baec0bb2144d71ffad5ce53651e8c3ac6

18 years agoAdd qdo options for setting the PBS job name and destination queue.
Steve Reinhardt [Thu, 20 Oct 2005 17:25:43 +0000 (13:25 -0400)]
Add qdo options for setting the PBS job name and destination queue.

util/qdo:
    Add options for setting the PBS job name and destination queue.

--HG--
extra : convert_revision : dcb46a03b8fd7a93e2ba656a9e5c806e250f5ac9

18 years agofix pbs dependency stuff
Nathan Binkert [Wed, 19 Oct 2005 06:10:24 +0000 (02:10 -0400)]
fix pbs dependency stuff

util/pbs/pbs.py:
    after -> afterok

--HG--
extra : convert_revision : ee0af716bcc0f83c4103632bd277a5680b0d2c23

18 years agoprovide a default jobfilename if a jobname is given
Nathan Binkert [Wed, 19 Oct 2005 06:04:03 +0000 (02:04 -0400)]
provide a default jobfilename if a jobname is given

--HG--
extra : convert_revision : c5659b9675ccd2ba71f5ffa38aff5d397d6ed1c3

18 years agoMerge zizzer:/bk/m5
Ali Saidi [Wed, 19 Oct 2005 04:39:48 +0000 (00:39 -0400)]
Merge zizzer:/bk/m5
into  zeep.eecs.umich.edu:/z/saidi/work/m5

--HG--
extra : convert_revision : 2e093e94bee380dd6acc9c245b5bd46df579e010

18 years agoAdd multiplier for instruction window size to monet configuration
Ali Saidi [Wed, 19 Oct 2005 04:39:18 +0000 (00:39 -0400)]
Add multiplier for instruction window size to monet configuration

--HG--
extra : convert_revision : 848a5ac37eb5d10e115f5ec89d688d30f2f9bd30

18 years agomake the sampling periods configurable
Nathan Binkert [Wed, 19 Oct 2005 02:36:43 +0000 (22:36 -0400)]
make the sampling periods configurable

--HG--
extra : convert_revision : 4276beb4f642ff5c3afcc9974f2c451bff100fb0

18 years agoShuffle around device names to make things easier to read.
Nathan Binkert [Wed, 19 Oct 2005 02:05:05 +0000 (22:05 -0400)]
Shuffle around device names to make things easier to read.
Create EtherDevBase which both Sinic and NSGigE derive from
bump fifos
drop rx max copy size to 1514 bytes to be friendlier with linux
default interrupt delay is 10us

dev/ns_gige.cc:
    Shuffle around parameters to make it easier to find stuff
dev/sinic.cc:
    Shuffle around parameters to make it easier to find stuff
    rename cycleTime -> clock
dev/sinic.hh:
    rename cycleTime -> clock

--HG--
extra : convert_revision : a673bee875e50d083098991aea20972fa8d5b5c7

18 years agomore remnants of the profile stuff
Nathan Binkert [Wed, 19 Oct 2005 01:10:35 +0000 (21:10 -0400)]
more remnants of the profile stuff

--HG--
extra : convert_revision : 435f24712f7bf7e8d844126e82e865ca309ebb67

18 years agoMake ALPHA_SE compile commit.cc
Nathan Binkert [Wed, 19 Oct 2005 01:05:17 +0000 (21:05 -0400)]
Make ALPHA_SE compile commit.cc

--HG--
extra : convert_revision : 16dc115014c16d4d400e69490cfff03e7229f8e0

18 years agouse the dedicated flag, no more exposing the m5reg directly
Nathan Binkert [Wed, 19 Oct 2005 01:01:05 +0000 (21:01 -0400)]
use the dedicated flag, no more exposing the m5reg directly

dev/ns_gige.cc:
    stop exposing the m5reg to the configuration stuff and build it
    based on exposed flags.  Expose dedicated now.
dev/ns_gige.hh:
    goodbye m5reg hello dedicated
dev/ns_gige_reg.h:
    Flags for the M5REG

--HG--
extra : convert_revision : 11134fe67cdf5291caacf9b3041739c437b983e3

18 years agodefine a couple more abi regiesters
Nathan Binkert [Wed, 19 Oct 2005 00:02:23 +0000 (20:02 -0400)]
define a couple more abi regiesters

--HG--
extra : convert_revision : 2b909cc784d4fdd4833a70e86d13c207a7c1dd23

18 years agoAdd missing change from big function profile commit
Nathan Binkert [Tue, 18 Oct 2005 23:20:00 +0000 (19:20 -0400)]
Add missing change from big function profile commit

--HG--
extra : convert_revision : 46e031098a4291638ea231ba8d3ed0339cab6e29

18 years agofix nmtest
Nathan Binkert [Tue, 18 Oct 2005 23:18:27 +0000 (19:18 -0400)]
fix nmtest

test/Makefile:
    get nmtest to compile
test/nmtest.cc:
    make nmtest actually do something

--HG--
extra : convert_revision : 471c02c51355a5145f0d0ce965c2a341076120c0

18 years agoDefault jobfile for stats
Nathan Binkert [Tue, 18 Oct 2005 23:17:36 +0000 (19:17 -0400)]
Default jobfile for stats

util/stats/stats.py:
    Make the default jobfile Test.py in the current directory
    add the -J flag to tell it not to use a jobfile

--HG--
extra : convert_revision : 5cf5bb2f32ed9c9701a94eabc9b2a538581acf94

18 years agoAdd new function profiling stuff, wrap the pc_sample stuff into it.
Nathan Binkert [Tue, 18 Oct 2005 23:07:42 +0000 (19:07 -0400)]
Add new function profiling stuff, wrap the pc_sample stuff into it.

SConscript:
    Get rid of the pc_sample stuff and move to the new profiling stuff
base/traceflags.py:
    DPRINTF Stack stuff
cpu/base.cc:
cpu/base.hh:
cpu/exec_context.cc:
cpu/exec_context.hh:
cpu/simple/cpu.cc:
    Add profiling stuff
kern/kernel_stats.hh:
    Use a smart pointer
sim/system.cc:
sim/system.hh:
    Create a new symbol table that has all of the symbols for a
    particular system
util/stats/categories.py:
    change around the categories, add categories for function
    profiling stuff
util/stats/profile.py:
    No profile parsing and display code to deal with function
    profiling stuff, graph, dot, and text outputs.

--HG--
extra : convert_revision : b3de0cdc8bd468e42647966e2640ae009bda9eb8

18 years agoBetter pool job handling
Nathan Binkert [Tue, 18 Oct 2005 19:05:01 +0000 (15:05 -0400)]
Better pool job handling

util/pbs/job.py:
    the default jobfile is now Test.py in the root of the jobs directory
util/pbs/pbs.py:
    Clean up the qsub options handling and add job dependencies
util/pbs/send.py:
    the default jobfile is now Test.py in the root of the jobs directory
    add a flag to depend on your checkpoint
    add a flag to specify your node type
    create the base directory if it doesn't exist

--HG--
extra : convert_revision : dfffa4a5b0e68b2550a28fbb06b9d6a208ea1f2e

18 years agoImprovements to the graphing output
Nathan Binkert [Tue, 18 Oct 2005 19:01:51 +0000 (15:01 -0400)]
Improvements to the graphing output

util/stats/output.py:
    Create the graph directory if it doesn't exist
    Don't write out a graph if all of the jobs for that graph are missing

--HG--
extra : convert_revision : 7993baf1a4be33a062f86a4f09791f01eaafa43c

18 years agoFix for g++ 4 warning... not sure why this is just popping up now.
Steve Reinhardt [Fri, 14 Oct 2005 03:47:31 +0000 (23:47 -0400)]
Fix for g++ 4 warning... not sure why this is just popping up now.

sim/system.hh:
    Fix for g++ 4.

--HG--
extra : convert_revision : e169220ba9ca34ebd4ba2bbafadf8de42f005812

18 years agoClean up symbol table access functions and make it
Nathan Binkert [Wed, 12 Oct 2005 21:18:10 +0000 (17:18 -0400)]
Clean up symbol table access functions and make it
possible to inline them.  The symbol table is heavily
used in the stacktrace code and the faster access
functions should help out.

base/loader/symtab.cc:
    Put these in the header file since they are simple and can
    be inlined.
base/loader/symtab.hh:
    Move the various findFoo functions to the header file so they
    can be inlined.  Add findNearestAddr functions that don't
    return the symbol.  This is so you can figure out what
    function you're in based on the symbol table, but not waste
    time copying out the symbol name if you don't need it.

--HG--
extra : convert_revision : 00cac40a79b0641a70c5ec7d9838fa0ec505c6a1

18 years agobetter english in stat descriptions for NS GigE
Nathan Binkert [Wed, 12 Oct 2005 17:53:10 +0000 (13:53 -0400)]
better english in stat descriptions for NS GigE

dev/ns_gige.cc:
    better english in stat descriptions

--HG--
extra : convert_revision : e75fc71e3285389cd38a9a00376a494778536b1d

18 years agoMake it easier to attach the remote debugger.
Nathan Binkert [Wed, 12 Oct 2005 17:45:21 +0000 (13:45 -0400)]
Make it easier to attach the remote debugger.

base/remote_gdb.cc:
    Keep track of a vector of all of the usable debuggers and provide
    a current_debugger variable that can be set from gdb to specify
    which remote debugger is desired.
    If debugger() is called and the current_debugger is not attached,
    call accept on its listener so we can still attach a remote debugger
    from the gdb prompt if we had forgotten to before.
    Print out more information when the simulator starts so we can
    distinguish debuggers more easily.
base/remote_gdb.hh:
    Have a remote debugger instance keep track of its listener.
    Number the remote debuggers so it's easier to figure out which is which.

--HG--
extra : convert_revision : 97119597ac3772ea4df6da3b3a4827f50253a51f

18 years agoAdd support for 64-bit addresses to the NS GigE device model.
Nathan Binkert [Wed, 12 Oct 2005 17:39:40 +0000 (13:39 -0400)]
Add support for 64-bit addresses to the NS GigE device model.

dev/ns_gige.cc:
    Add support for 64-bit addresses
dev/ns_gige.hh:
dev/ns_gige_reg.h:
    Need both cached 32-bit and 64-bit descriptors

--HG--
extra : convert_revision : 514788d8d95554b3512f1b75db5314c823453a8c

18 years agodon't write the pbs jobid here, do it in send.py so we know
Nathan Binkert [Wed, 12 Oct 2005 17:01:55 +0000 (13:01 -0400)]
don't write the pbs jobid here, do it in send.py so we know
what it is sooner
Don't handle sigstop since you're not allowed to.

util/pbs/send.py:
    write the pbs jobid here in send.py so we know what it is sooner

--HG--
extra : convert_revision : 93292d046cb4b628031e0e57e39eb4470b598ed8

18 years agoMerge zizzer:/bk/m5
Lisa Hsu [Sun, 9 Oct 2005 22:29:12 +0000 (18:29 -0400)]
Merge zizzer:/bk/m5
into  zed.eecs.umich.edu:/z/hsul/work/m5/clean

--HG--
extra : convert_revision : 427e867b51ee3c9c2a1c70a16d36dfaf83284b2c

18 years agoadd a flag that supercedes all other InstExec flags to print a trace in the Intel...
Lisa Hsu [Sun, 9 Oct 2005 22:20:54 +0000 (18:20 -0400)]
add a flag that supercedes all other InstExec flags to print a trace in the Intel sim compatible format.

--HG--
extra : convert_revision : 19569e5645f2d68fb68a0352753c08c2a24bfdc4

18 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5 m5_1.1
Steve Reinhardt [Thu, 6 Oct 2005 17:59:37 +0000 (13:59 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into  zizzer.eecs.umich.edu:/z/stever/bk/m5

--HG--
extra : convert_revision : c725ff66b214027cdb72a2cf8ffd017e9b120700

18 years agoMore documentation for 1.1 release.
Steve Reinhardt [Thu, 6 Oct 2005 17:59:05 +0000 (13:59 -0400)]
More documentation for 1.1 release.

README:
    More updates for 1.1 release.

--HG--
extra : convert_revision : 3e39cf4d1cba49dfb254cd1047144ac2aa728221

18 years agoMerge zizzer:/bk/m5
Lisa Hsu [Thu, 6 Oct 2005 17:55:08 +0000 (13:55 -0400)]
Merge zizzer:/bk/m5
into  zed.eecs.umich.edu:/z/hsul/work/m5/clean

--HG--
extra : convert_revision : 42c38ea59c6787fdcf25bf8e1737f71ac253cf8a

18 years agoAdd execution trace object to Root.
Steve Reinhardt [Thu, 6 Oct 2005 17:50:13 +0000 (13:50 -0400)]
Add execution trace object to Root.

python/m5/objects/Root.py:
    Add execution trace object.

--HG--
extra : convert_revision : 1d1ba18779fd4d0b5af921c5f34b7a2bfb4b75d9

18 years agoUpdate README for IOSCA release.
Steve Reinhardt [Thu, 6 Oct 2005 02:55:01 +0000 (22:55 -0400)]
Update README for IOSCA release.

README:
    Update for IOSCA release.

--HG--
extra : convert_revision : 6ed7c857cc71021f51abe8c462a9b8b58215dcfb

18 years agocan't designate checkpoint from command line without this import
Lisa Hsu [Wed, 5 Oct 2005 21:37:22 +0000 (17:37 -0400)]
can't designate checkpoint from command line without this import

--HG--
extra : convert_revision : c6428fc99edb1f621da77c97b44e8a71c5b3cb66

18 years agoMinor cleanup of memtest.
Steve Reinhardt [Mon, 3 Oct 2005 13:13:56 +0000 (09:13 -0400)]
Minor cleanup of memtest.

cpu/memtest/memtest.cc:
    Call random() consistently (not sometimes rand() and sometimes random()).
    Don't bother to call random() for copy-only parameters unless we're
    actually doing a copy.

--HG--
extra : convert_revision : 50ef72594ad53ba531584b3c9dde61ac036a4e38

18 years agoAdd executable parameter to LiveProcess. This allows the argv[0] value to
Steve Reinhardt [Sat, 1 Oct 2005 20:02:47 +0000 (16:02 -0400)]
Add executable parameter to LiveProcess.  This allows the argv[0] value to
stay fixed even if the path to the binary changes, so the simulation results
are independent of that path.

--HG--
extra : convert_revision : d1109cd284466c14eddc97289908a51e771fc5db

18 years agoCommit regression script. The cron job uses a copy in m5test's
Steve Reinhardt [Sat, 1 Oct 2005 15:36:56 +0000 (11:36 -0400)]
Commit regression script.  The cron job uses a copy in m5test's
home directory (/z/m5/regression), so for now any modifications
should be manually copied there as well.

Note that this script is designed to be useful for running full
regressions outside of the cron job as well.

--HG--
extra : convert_revision : 052ec5d58b5ff765d8f3a9b50849ef34d62c8d66

18 years agoAdd default= option to SConstruct.
Steve Reinhardt [Sat, 1 Oct 2005 15:32:33 +0000 (11:32 -0400)]
Add default= option to SConstruct.

build/SConstruct:
    Add 'default=' argument to specify base config to use when setting
    up a new build dir with a different name, e.g.:
    scons default=ALPHA_SE USE_MYSQL=no ALPHA_SE_NOSQL/m5.opt

--HG--
extra : convert_revision : 0f7ee1414b3e84b36114415182baf54a8adab9b7

18 years agoClean up some formatting
Nathan Binkert [Fri, 30 Sep 2005 17:34:43 +0000 (13:34 -0400)]
Clean up some formatting

kern/linux/linux_system.cc:
    remove random character
kern/linux/linux_threadinfo.hh:
    Formatting fixes

--HG--
extra : convert_revision : 2be4772d7455ea1f4eb22966e00831701b7cbc27

18 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Fri, 30 Sep 2005 01:50:52 +0000 (21:50 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into  zizzer.eecs.umich.edu:/.automount/poolfs/z/home/stever/bkr/m5

--HG--
extra : convert_revision : c00173bbf537efd352ab7ce824bd23dc0177bb60

18 years agoFixes for building ALPHA_FS_TL with g++ 4.0.
Steve Reinhardt [Fri, 30 Sep 2005 01:50:37 +0000 (21:50 -0400)]
Fixes for building ALPHA_FS_TL with g++ 4.0.

--HG--
extra : convert_revision : 6f74cf888de8725696efdfb039f5621486ad4968

18 years agofix for delayed state machine changes
Ali Saidi [Thu, 29 Sep 2005 21:09:53 +0000 (17:09 -0400)]
fix for delayed state machine changes

--HG--
extra : convert_revision : db19e3687f48799725a9062e014588d318988cee

18 years agoFix for qdo & new pool node build.
Steve Reinhardt [Thu, 29 Sep 2005 20:03:36 +0000 (16:03 -0400)]
Fix for qdo & new pool node build.

util/qdo:
    unset PROMPT_COMMAND in shell in case system sets
    it for us.

--HG--
extra : convert_revision : f9f20f7dc6b9585b60f3ce53aadd06e7d64f5179

18 years agoMerge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
Steve Reinhardt [Sun, 25 Sep 2005 20:48:24 +0000 (16:48 -0400)]
Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
into  zizzer.eecs.umich.edu:/.automount/poolfs/z/home/stever/bk/m5

--HG--
extra : convert_revision : c777f18ba8462b7286ec8588b859de8f4091a772

18 years agoCreate build_options/current dir when necessary.
Steve Reinhardt [Sun, 25 Sep 2005 01:24:44 +0000 (21:24 -0400)]
Create build_options/current dir when necessary.

build/SConstruct:
    Need to create build_options/current the first time through.

--HG--
extra : convert_revision : 13bf8c69a4a30671283a8b789ed21875b2301f24

18 years agoSplit build options files into a static set of defaults
Steve Reinhardt [Sun, 25 Sep 2005 01:16:02 +0000 (21:16 -0400)]
Split build options files into a static set of defaults
for committing to bk and a dynamically updated set which
are not under revision control.

build/SConstruct:
    Split build options into static defaults and dynamic "current" settings.

--HG--
rename : build/build_options/ALPHA_FS => build/build_options/default/ALPHA_FS
rename : build/build_options/ALPHA_FS_TL => build/build_options/default/ALPHA_FS_TL
rename : build/build_options/ALPHA_SE => build/build_options/default/ALPHA_SE
extra : convert_revision : 8219211a3f2ce955fd6e2c34c169cac3fc704854

18 years agoClean up indentation in isa_desc.
Steve Reinhardt [Sat, 24 Sep 2005 22:17:51 +0000 (18:17 -0400)]
Clean up indentation in isa_desc.

arch/alpha/isa_desc:
    Little bit of re-ordering and indentation clean-up.

--HG--
extra : convert_revision : e538ff89d8b507c3e1aa68a032578fcaa645d7ee

18 years agoFix IDE disk UDMA mode support mask to actually reflect support for
Steve Reinhardt [Sat, 24 Sep 2005 19:22:28 +0000 (15:22 -0400)]
Fix IDE disk UDMA mode support mask to actually reflect support for
modes 4 *and below*, not just mode 4.

dev/ide_disk.cc:
    Fix UDMA mode support mask to actually reflect support for
    modes 4 *and below*, not just mode 4.

--HG--
extra : convert_revision : 3506d503a5e8ce8a8686fb3a552383d365be0d41

18 years agoAdd functions to System object to set up function-based events,
Steve Reinhardt [Sat, 24 Sep 2005 18:20:29 +0000 (14:20 -0400)]
Add functions to System object to set up function-based events,
including automatically fixing up addresses to deal with
optionally executed Alpha gp update prolog.

SConscript:
    Remove freebsd_events.cc and linux_events.cc.
base/remote_gdb.cc:
cpu/pc_event.cc:
kern/system_events.cc:
kern/system_events.hh:
    PCEvents now schedule themselves in constructor.
cpu/pc_event.hh:
    PCEvents now schedule themselves in the constructor.
    Get rid of constructor versions that don't take an address and
    all the schedule() methods that are now unnecessary.
kern/freebsd/freebsd_system.cc:
kern/freebsd/freebsd_system.hh:
    Use new System methods to schedule function-based events.
    Move FreeBSD-specific function event classes into FreebsdSystem.
kern/linux/linux_system.cc:
kern/linux/linux_system.hh:
    Use new System methods to schedule function-based events.
    Move Linux-specific function event classes into LinuxSystem.
kern/tru64/tru64_events.hh:
    PCEvents now schedule themselves in constructor.
    Add DebugPrintfrEvent to encapsulate raw setting as new type
    (to work better with new System function-event method.)
kern/tru64/tru64_system.cc:
    Use new System methods to schedule function-based events.
kern/tru64/tru64_system.hh:
    Add DebugPrintfrEvent to encapsulate raw setting as new type
    (to work better with new System function-event method.)
sim/system.cc:
sim/system.hh:
    Add functions to set up function-based events, including
    automatically fixing up addresses to deal with optionally
    executed Alpha gp update prolog.

--HG--
extra : convert_revision : c2cf09144297b6602afe755a34a0a2227023783f

18 years agoSupport for compiling and testing on pool via 'qdo' script.
Steve Reinhardt [Thu, 22 Sep 2005 19:27:42 +0000 (15:27 -0400)]
Support for compiling and testing on pool via 'qdo' script.
For this to work qdo must be on your path.  I've copied it into
/usr/local/bin on zizzer.

build/SConstruct:
    Add BATCH and BATCH_CMD options to support compiling/testing
    on pool via qdo.

--HG--
extra : convert_revision : b7fc46465e897f7f15ed4a67f6735886917a6c4b

18 years agoTweak the set of coalesced interrupts
Nathan Binkert [Mon, 19 Sep 2005 01:22:57 +0000 (21:22 -0400)]
Tweak the set of coalesced interrupts

dev/ns_gige.cc:
    clean up usage of ISR_FOO macros
dev/ns_gige_reg.h:
    Clean up #defines
    make ISR_RXIDLE and ISR_TXIDLE coalesced

--HG--
extra : convert_revision : fd64fc6a441d096fc45737fdcb837de8868ca10a

18 years agofix the MAX_CHECKPOINTS stuff
Nathan Binkert [Mon, 19 Sep 2005 01:20:24 +0000 (21:20 -0400)]
fix the MAX_CHECKPOINTS stuff

sim/serialize.cc:
    Make the max checkpoint thing actually stop after the last
    checkpoint

--HG--
extra : convert_revision : 091179c4706e9876a9b7e826513c5c14ce6b72af

18 years agoTotally re-work the way that jobfiles are done so there is more
Nathan Binkert [Sat, 17 Sep 2005 20:51:26 +0000 (16:51 -0400)]
Totally re-work the way that jobfiles are done so there is more
information that can be used for other aspects of sending jobs.
New graphing output stuff with matplotlib.

util/pbs/job.py:
    Shuffle code around and create the JobDir class which encapsulates
    all of the functionality needed for making, organizing, and cleaning
    a job directory.
    Better status output
util/pbs/jobfile.py:
    Majory re-working of the jobfile code.
    A job file now consists of several objects that describe how
    jobs should be run, it includes information about checkpoints,
    and graphing.
util/pbs/send.py:
    use the new jobfile code.
    deal with the 15 character limit of pbs by truncating the name and
    using the raj hack.
util/stats/db.py:
    fix the __str__ function for nodes
    provide __getitem__ for the Database class
util/stats/stats.py:
    use the jobfile stuff to figure out what the proper naming
    and organziation of the graphs should be.
    move all output code to output.py, get rid of ploticus and use
    matplotlib

--HG--
rename : util/categories.py => util/stats/categories.py
extra : convert_revision : 0d793cbf6ad9492290e8ec875ce001c84095e1f7

18 years agoFix the EtherDump parameters
Nathan Binkert [Sat, 17 Sep 2005 14:47:16 +0000 (10:47 -0400)]
Fix the EtherDump parameters

dev/etherdump.cc:
    no default parameters anymore they should be in python
python/m5/objects/Ethernet.py:
    move the maxlen parameter for EtherDump into python

--HG--
extra : convert_revision : a796353a68907dfeb22059cd3ad536e6e8f60998