summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2004-05-12Make a new stat type of Value which is a scalar stat thatNathan Binkert
proxies for a real C/C++ scalar value or scalar functor. This replaces the scalar() and functor() terms that were previously used in formulas. This helps when dumping statistics because the formulas are not supposed to change. cpu/base_cpu.cc: Add a number of cycles stat to the cpu object that tracks the number of cycles that the cpu has executed. This starts to pave the way for cpu cycles being different from event ticks. cpu/base_cpu.hh: provide a functor for calculating all simulated instructions of all CPUs and a virtual function for determining that number. To deal with the change from functor() to Value::functor() cpu/simple_cpu/simple_cpu.cc: simTicks -> numCycles numInsts is now a real Scalar stat, not a Formula cpu/simple_cpu/simple_cpu.hh: numInsts is now a real Scalar stat, not a Formula count all instructions sim/stat_control.cc: simInsts, simTicks, hostMemory, and hostSeconds are no longer Statistics::Formula but rather Statistics::Value add new stat for tick frequency sim/stats.hh: don't need everything to be extern. test/Makefile: Make stuff work a tad bit better test/stattest.cc: test out Statistics::Value --HG-- extra : convert_revision : c812e8baa2b17c08abf3a68ed1e1125dc6f2cfb4
2004-05-10dma_bus_interface_impl.hh:Steve Reinhardt
Fix template param (breaks on g++ 3.3). --HG-- extra : convert_revision : b469aa9aab105bbc5a72a20a48a4abd2e218ff8c
2004-05-10Do a better job of factoring out CPU model in ISA description.Steve Reinhardt
(Still not perfect though.) arch/alpha/isa_desc: Do a better job of factoring out CPU model. (Still not perfect though.) Pull execute() methods out of class declarations into separate section of file, allowing (1) easier replication for different CPU models and (2) a path to putting them all in a separate file. Force all instruction execution context into a single model-dependent class (SimpleCPU itself for SimpleCPU, DynInst for FullCPU). arch/isa_parser.py: Do a better job of factoring out CPU model. (Still not perfect though.) Pull execute() methods out of class declarations into separate section of file, allowing (1) easier replication for different CPU models and (2) a path to putting them all in a separate file. Also restructure top level to allow parser to run under interactive interpreter session for easier debugging. cpu/exec_context.hh: Add a few new methods to clean up isa_desc. cpu/simple_cpu/simple_cpu.cc: cpu/static_inst.hh: StaticInst::execute no longer takes a CPU and an ExecContext, just a unified FooCPUExecContext. cpu/simple_cpu/simple_cpu.hh: Add methods to redirect calls to ExecContext so SimpleCPU can act as sole instruction execution context for itself. Typedef SimpleCPU to SimpleCPUExecContext. --HG-- extra : convert_revision : ecc445503bc585585da5663fe61796580e744da6
2004-05-08Very minor fixes.Steve Reinhardt
util/tracediff: stats:file option is now stats:text_file --HG-- extra : convert_revision : 74b6294da0003345e84bc1533d536dab271b6033
2004-05-07MergeSteve Reinhardt
--HG-- extra : convert_revision : 7999c243a80482b9feffdf8f3dd4ff061b189377
2004-05-06don't do dependencies on make generateNathan Binkert
--HG-- extra : convert_revision : 0dac37a1676e795bf2ebf9572e37b6b78af7929a
2004-05-06Merge zizzer.eecs.umich.edu:/m5/Bitkeeper/m5Nathan Binkert
into zizzer.eecs.umich.edu:/.automount/ziff/z/binkertn/research/m5/latest --HG-- extra : convert_revision : 12234085865daa71e32981177d3376c93b3ed11e
2004-05-06add support for sticking generated files in the build directoryNathan Binkert
instead of with the source code. This will hopefully be especially useful when we're generating dozens of files when we flesh out the object description stuff. remove generated files from the source tree. python is required to build now. base/trace.hh: no need for the underscore in the name base/traceflags.py: clean up code --HG-- extra : convert_revision : f68af8c3460eb7e73a1defaea3081a02ad7db33c
2004-05-05Documentation fixesErik Hallnor
--HG-- extra : convert_revision : 9f62115463e6e624a95ae83189dac21c593a2ee4
2004-05-04file used by old compile time binning which lisa's since fixedNathan Binkert
--HG-- extra : convert_revision : b8ae8371fdf22b601bcfd15ce7c28af6ed081dc0
2004-05-04add a bit more data to the rob dumpNathan Binkert
--HG-- extra : convert_revision : 99f76a62d1a1f057868c4303905cc269fd56aab7
2004-05-04Major stats package cleanupNathan Binkert
Add support for generic visitors for stats and use them to implement independent output functions. Support for mysql output and some initial code for hacking on mysql output with python arch/alpha/pseudo_inst.cc: base/hybrid_pred.cc: base/hybrid_pred.hh: base/sat_counter.cc: base/sat_counter.hh: cpu/simple_cpu/simple_cpu.cc: kern/tru64/tru64_events.cc: sim/main.cc: sim/process.cc: sim/process.hh: sim/sim_events.cc: sim/sim_object.cc: sim/system.hh: update for changes in stats package base/statistics.cc: move the python output code to base/stats/puthon.(cc|hh) and reimplement it as a visitor. move the text output code to base/stats/text.(cc|hh) and reimplement it as a visitor. move the database stuff into base/stats/statdb.(cc|hh) and get rid of the class. Put everything as globals in the Statistics::Database namespace. allocate unique ids for all stats. directly implement the check routine and get rid of the various dumping routines since they're now in separate files. make sure that no two stats have the same name clean up some loops base/statistics.hh: major changes to the statistics package again lots of code was factored out of statistics.hh into several separate files in base/stats/ (this will continue) There are now two Stat package types Result and Counter that are specified to allow the user to keep the counted type separate from the result type. They are currently both doubles but that's an experiment. There is no more per stat ability to set the type. Statistics::Counter is not the same as Counter! Implement a visitor for statistics output so that new output types can be implemented independently from the stats package itself. Add a unique id to each stat so that it can be used to keep track of stats more simply. This number can also be used in debugging problems with stats. Tweak the bucket size stuff a bit to make it work better. fixed VectorDist size bug cpu/memtest/memtest.cc: Fix up for changes in stats package Don't use value() since it doesn't work with binning. If you want a number as a stat, and to use it in the program itself, you really want two separate variables, one that's a stat, and one that's not. cpu/memtest/memtest.hh: Fix up for changes in stats package test/Makefile: Try to build stuff now that directories matter test/stattest.cc: test all new output types choose which one with command line options --HG-- extra : convert_revision : e3a3f5f0828c67c0e2de415d936ad240adaddc89
2004-05-04Update for doxygen 1.3.6Erik Hallnor
--HG-- extra : convert_revision : e7a1820a5651dc68e2927194aeabd23a3d852487
2004-05-04Function for getting usernameNathan Binkert
--HG-- extra : convert_revision : 50c0bf7b083e780071e85fabdcd6f91a96f4b2e3
2004-05-04don't duplicate stat namesNathan Binkert
--HG-- extra : convert_revision : 2a19b12457cb19e233e4b133044ff95eb5d44e2f
2004-04-29Derive from SimObject so stats are registered.Erik Hallnor
--HG-- extra : convert_revision : cbc70641235f040ebff6a98de7ff6384e06b8dbd
2004-04-29Change the way the DMAInterface works internally to make it easier to change ↵Erik Hallnor
things in the future. --HG-- extra : convert_revision : 2f7275f95433918549e76b16a8903e5df2d0188c
2004-04-28Minor enhancements to Python config stuff:Steve Reinhardt
- 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-28Merge ehallnor@zizzer:/bk/m5Erik Hallnor
into zizzer.eecs.umich.edu:/y/ehallnor/work/m5 --HG-- extra : convert_revision : f658c6d2e86a736702fcb88b0493904a72f5e47f
2004-04-28Little updates do the documentation.Erik Hallnor
--HG-- extra : convert_revision : 647f2bc32064b1f330513d812d59357f01adc012
2004-04-27Add an adaptive compression scheme.Erik Hallnor
--HG-- extra : convert_revision : 4ebf32976ba983cb3b9175cdf5f2e1359fa49c8b
2004-04-22Cleanup configs since bridges are now autosensing of addressesNathan Binkert
and are bidirectional. --HG-- extra : convert_revision : 840c940b4cee991f3a0c8e365fb60c0ef9166cf2
2004-04-15Fix the way write delay are sent on the data bus so that they are always ↵Erik Hallnor
sent. Also fixes the problem of sending both responses and write delays. --HG-- extra : convert_revision : 3bb684526bf2ed5ab7b05c54d768291baf5dec02
2004-04-14Code cleanup and debugging for the bus.Erik Hallnor
--HG-- extra : convert_revision : 8356dbf022e1aca71ff75f2947382af6a37d65b4
2004-04-12Each direction in the BusBridge can now buffer max requests before blockingErik Hallnor
--HG-- extra : convert_revision : c411cbf0affafebbc914d92d6691729fc3125486
2004-04-12Delete the new store data.Erik Hallnor
--HG-- extra : convert_revision : 1a03ab0500867e9855ff0cc343e29200c109cb1f
2004-04-12Add data to stores to make compression results consistant across version of ↵Erik Hallnor
the code. --HG-- extra : convert_revision : c72f46685e31cc93b1c1ddab78b8cf30473d4ac9
2004-04-09Connect the bus bridge up correctly, internally.Erik Hallnor
--HG-- extra : convert_revision : 323c0a79800721e4ecd253000095eb0a7a36bb29
2004-04-06Beta version of Python configuration tool. Generates .ini files fromSteve Reinhardt
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-05Merge zizzer:/bk/m5 into isabel.reinhardt.house:/z/stever/bk/m5Steve Reinhardt
--HG-- extra : convert_revision : ca1c124e667fb6d2927959a2078dd2e28c26cd2b
2004-04-05Changes to config to allow everything (including 'children'Steve Reinhardt
and 'type') to be specified via instance name and not just config class. Old code only did instance-name lookup for SimObject parameters. This feature makes life easier for transitioning to the Python script-based config. sim/builder.cc: Use ConfigNode::find to look for "type" parameter so it can be found if set under instance name (not config class). sim/param.cc: Make Param<bool> accept "1" for true and "0" for false. --HG-- extra : convert_revision : f40d0878d0f03b2e216f0506c05d0e52db608cca
2004-04-05Make BusBridge bidirectional. Add a new slave and master interface to help ↵Erik Hallnor
accomplish this. --HG-- extra : convert_revision : 41bf9ce95e2965e13f7325b0b0b3be198ca86aee
2004-04-03More {Itb,Dtb} -> {ITB,DTB} renames (forgot to test build KERNEL).Steve Reinhardt
Also missed renames in a bunch of config files somehow. (See previous changeset for list of renames.) arch/alpha/alpha_memory.cc: arch/alpha/ev5.cc: arch/alpha/faults.hh: cpu/exec_context.cc: cpu/exec_context.hh: cpu/simple_cpu/simple_cpu.hh: More {Itb,Dtb} -> {ITB,DTB} renames (forgot to test build KERNEL). --HG-- extra : convert_revision : b2c6ca0916b72b59895520fcacaf028667560a0d
2004-04-02MergeSteve Reinhardt
--HG-- extra : convert_revision : dadfa2cd97908d769f1e2d5c645140f296ec6a82
2004-04-02Basic cleanup pass to get rid of a few things that made the PythonSteve Reinhardt
configuration unnecessarily awkward. Biggest changes are: - External and internal object names now match in all cases. The macros still allow them to be different; the only reason I didn't get rid of that is that the macros themselves should be going away soon. In the few conflicting cases, I sometimes renamed the C++ object and sometimes renamed the config object. The latter sets of substitions are: s/BaseBus/Bus/; s/MemoryObject/FunctionalMemory/; s/MemoryControl/MemoryController/; s/FUPool/FuncUnitPool/; - SamplingCPU is temporarily broken... we need to change the model of how this works in the .ini file. Having it as a CPU proxy is really awkward. arch/alpha/alpha_memory.cc: arch/alpha/alpha_memory.hh: cpu/simple_cpu/simple_cpu.cc: sim/process.cc: Rename objects to match config name. cpu/base_cpu.cc: Uncomment SimObject define since SamplingCPU no longer does this for us. dev/ethertap.cc: Use unsigned instead of uint16_t for params. kern/tru64/tru64_system.cc: Use unsigned instead of uint64_t for init_param param. test/paramtest.cc: Fix old SimObjectParam. --HG-- extra : convert_revision : 378ebbc6a71ad0694501d09979a44d111a59e8dc
2004-04-02Add new range functions to DmaInterface as well.Erik Hallnor
--HG-- extra : convert_revision : 3a7aa3e6495de86c365128b4bd1ef41fe8ff4142
2004-04-02Add automatic bus bridge address range setting/resetting. You can no longer ↵Erik Hallnor
directly set a address range on a bus bridge. --HG-- extra : convert_revision : 708fb67b82c619f340f2b5a95f4542b573004774
2004-04-01Fix dependencies (broken since Nate's tree-build change).Steve Reinhardt
--HG-- extra : convert_revision : 7be203a46c53ac7cf464ac3857e27259a846dcfb
2004-04-01Add a average references to a cache block stat.Erik Hallnor
--HG-- extra : convert_revision : ba0ff82985a44c8e2de129194b1f755199469f8f
2004-03-26Get rid of the printExtraOutput stuffNathan Binkert
--HG-- extra : convert_revision : d82718ad4b3c5dd56a99c727e78b39917f9d4541
2004-03-25Merge zizzer.eecs.umich.edu:/bk/m5Nathan Binkert
into crampon.:/z/binkertn/research/m5/latest --HG-- extra : convert_revision : f210926c232d2999703bbb0adf08899d8c041729
2004-03-25Get rid of symlink hack in makefileNathan Binkert
--HG-- extra : convert_revision : c1bc90a1d823f8034da692afd6005456ef98831b
2004-03-24Minor cleanup from building & diffing behaviorSteve Reinhardt
on various platforms. base/hashmap.hh: gcc on Alpha doesn't always define __LP64__, even though it arguably should. cpu/exec_context.cc: Clear register file on non-full-system too (even though it typically gets overwritten by the initial regs from the Process object). sim/process.cc: Clear initial register copy in Process object. Not all regs get initialized when the executable is loaded. --HG-- extra : convert_revision : f1fe4734a5ea81331d70994cb5284b1e9db0dceb
2004-03-24Don't indent namespaces because it just wastes spaceNathan Binkert
--HG-- extra : convert_revision : 2236838a40bf77689a3d75df718c0da410c3fbb6
2004-03-24Get rid of the old VPATH stuff for getting at source filesNathan Binkert
instead, require a path for each file. --HG-- extra : convert_revision : 9ecab85eefd10ee988edce06dd6c94e8df42ad95
2004-03-24Merge zizzer.eecs.umich.edu:/bk/m5Nathan Binkert
into ziff.eecs.umich.edu:/z/binkertn/research/m5/latest --HG-- extra : convert_revision : b0af82ea6028d1f7f6756edf266945732c25ad52
2004-03-24Hacks to make the libelf stuff work in openbsd.Nathan Binkert
base/loader/elf_object.cc: The symbol versioning stuff screws up OpenBSD. We don't need it anyway --HG-- extra : convert_revision : 736d5c1baaf7f5727665f84cc08e3781e193b389
2004-03-24Merge ehallnor@zizzer:/bk/m5 into zazzer.eecs.umich.edu:/z/ehallnor/m5Erik Hallnor
--HG-- extra : convert_revision : d950120ed0f96421bb953a96db94fb4aecf2241d
2004-03-24A few memory system performance enhancements.Erik Hallnor
base/compression/lzss_compression.cc: base/compression/lzss_compression.hh: Rework for better performance --HG-- extra : convert_revision : b13d706e0e23cbe7122b611258354c66cf5f3c70
2004-03-24memory.ini:Nathan Binkert
make the default width narrower --HG-- extra : convert_revision : eb25a979d065e9e3aaf030417a22c581209d8630