Age | Commit message (Collapse) | Author |
|
--HG--
extra : convert_revision : 82b092391f7c866f33ddb028070181038bdce0f8
|
|
--HG--
extra : convert_revision : 5a5c0a8c28153f4cf4c3dbebd8f75096e4c4ea94
|
|
--HG--
extra : convert_revision : e0ed251f4d75b5bf313a72772afed668fb7e38d2
|
|
into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : 3cc23080d19cc464a8ba7c1c93b6e5d45af7d463
|
|
--HG--
extra : convert_revision : bc467a40593234a1e3b694a741b4a7c2154a95ea
|
|
--HG--
extra : convert_revision : b2481bedac786e4a6bb0d577954242d7f4c144a0
|
|
supported.
--HG--
extra : convert_revision : a732fa169962632937ace368430cb3733c0e3cc6
|
|
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
|
|
duplicate row in db
--HG--
extra : convert_revision : 45877c6feeaddf921eb0f4764246bf66e1705a1d
|
|
python/m5/objects/Ethernet.py:
Add Latency Variability Parameter
--HG--
extra : convert_revision : db5431cccffea8c7247d0f72e4770d4d58bd25aa
|
|
--HG--
extra : convert_revision : 0cdfa6c5d57b7607c97b2ed08dff88e1b961718c
|
|
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
|
|
--HG--
extra : convert_revision : 27226b774e0f0273e238d062241f4581c9bb1639
|
|
--HG--
extra : convert_revision : fb46eee741f4899d76bcf927523fa151d002decf
|
|
--HG--
extra : convert_revision : a4067f07d71d2adc1ccbf4512a43ceee7b5cc3de
|
|
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
|
|
test/genini.py:
Use m5execfile to execute .py files so that sys.path gets handled correctly.
--HG--
extra : convert_revision : 8d8c90a7f40d51c95ba0f43bb9f6d7b2ee49f16e
|
|
into zed.eecs.umich.edu:/z/hsul/work/m5/clean
--HG--
extra : convert_revision : 8935c26cbf6cafd9c0f76783605c137f5a74e897
|
|
--HG--
extra : convert_revision : aba28067abbb515eaa20a4d3303db19ac077777f
|
|
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
|
|
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
|
|
dev/sinic.cc:
better name for both pio interfaces
--HG--
extra : convert_revision : f7821c9c28b0095b366177b4c48a4ec14c3c89ee
|
|
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
|
|
into ziff.eecs.umich.edu:/z/binkertn/research/m5/head
--HG--
extra : convert_revision : 35075f75f7e31e0500b964ec45db3019eea06c76
|
|
automatically happens in the interface after the packet
is delivered to the device.
--HG--
extra : convert_revision : 07890c4c5ce83fe709ce203f66c330d7cd631235
|
|
util/stats/db.py:
need to import the values function
util/stats/info.py:
it's just run
--HG--
extra : convert_revision : 3cb67d8112a1a5fdf761b73732859a71f585bd1f
|
|
util/stats/profile.py:
Pass around the number of symbols limit
deal with categorization a bit better.
--HG--
extra : convert_revision : 908410e296efd4514f2dfc0eb9e6e42834585560
|
|
into zizzer.eecs.umich.edu:/.automount/ziff/z/binkertn/research/m5/work
--HG--
extra : convert_revision : 8ef6ed2d770d45ac11d44a449e2c4f74ef656d87
|
|
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
|
|
arch/isa_parser.py:
Derive Stack class directly from list.
--HG--
extra : convert_revision : 4f09db4baec0bb2144d71ffad5ce53651e8c3ac6
|
|
util/qdo:
Add options for setting the PBS job name and destination queue.
--HG--
extra : convert_revision : dcb46a03b8fd7a93e2ba656a9e5c806e250f5ac9
|
|
util/pbs/pbs.py:
after -> afterok
--HG--
extra : convert_revision : ee0af716bcc0f83c4103632bd277a5680b0d2c23
|
|
--HG--
extra : convert_revision : c5659b9675ccd2ba71f5ffa38aff5d397d6ed1c3
|
|
into zeep.eecs.umich.edu:/z/saidi/work/m5
--HG--
extra : convert_revision : 2e093e94bee380dd6acc9c245b5bd46df579e010
|
|
--HG--
extra : convert_revision : 848a5ac37eb5d10e115f5ec89d688d30f2f9bd30
|
|
--HG--
extra : convert_revision : 4276beb4f642ff5c3afcc9974f2c451bff100fb0
|
|
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
|
|
--HG--
extra : convert_revision : 435f24712f7bf7e8d844126e82e865ca309ebb67
|
|
--HG--
extra : convert_revision : 16dc115014c16d4d400e69490cfff03e7229f8e0
|
|
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
|
|
--HG--
extra : convert_revision : 2b909cc784d4fdd4833a70e86d13c207a7c1dd23
|
|
--HG--
extra : convert_revision : 46e031098a4291638ea231ba8d3ed0339cab6e29
|
|
test/Makefile:
get nmtest to compile
test/nmtest.cc:
make nmtest actually do something
--HG--
extra : convert_revision : 471c02c51355a5145f0d0ce965c2a341076120c0
|
|
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
|
|
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
|
|
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
|
|
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
|
|
sim/system.hh:
Fix for g++ 4.
--HG--
extra : convert_revision : e169220ba9ca34ebd4ba2bbafadf8de42f005812
|
|
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
|
|
dev/ns_gige.cc:
better english in stat descriptions
--HG--
extra : convert_revision : e75fc71e3285389cd38a9a00376a494778536b1d
|