summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-03-02Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5Ali Saidi
--HG-- extra : convert_revision : cc69c3009fe34de4b4a658a383ce1d2750f227f6
2005-03-01Two fixes to try and get TLB miss cost more in line with real platform:Steve Reinhardt
1) Add fault_handler_delay param to FullCPU to wait N cycles after committing faulting instruction before fetching fault handler. 2) Make hw_rei a serializing instruction (flushes pipe, basically). arch/alpha/isa_desc: Make hw_rei a serializing instruction (guarantees previous insts complete before hw_rei will issue). --HG-- extra : convert_revision : 704cef65b3869be9eee724055cedb22114a78359
2005-03-01add the new func unit into the overall list.Lisa Hsu
--HG-- extra : convert_revision : 2d425ec36de0443e094640fdbbc43754bfc7ed2e
2005-03-01add some comments.Nathan Binkert
sim/pyconfig/m5config.py: Add some comments to indicate what the decorators mean. --HG-- extra : convert_revision : fbcbcbe4ad8cd62f2bd12af6b1f141c66752b870
2005-03-01Add FUDesc for IprAccessAli Saidi
--HG-- extra : convert_revision : 42c5f8765185aba6a5ca59180d93c579ef759449
2005-03-01Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5Ali Saidi
--HG-- extra : convert_revision : 439e7d84ea9a66177b0cc2cab4cd77ecb90aa6fe
2005-03-01Updated Monet Configuration and validations testsAli Saidi
--HG-- extra : convert_revision : d58aed18f8f809185ad2639eb92465a5fc6695de
2005-03-01Fix stats incompatibility with g++ 3.4.Steve Reinhardt
base/statistics.hh: Get rid of operator%... g++ 3.4 complains that this isn't defined for doubles (which makes sense). We never use it anyway. --HG-- extra : convert_revision : 3ca724e1cc42559226549835f6cd3509308e02ca
2005-03-01Add a new operation class for IPR accesses, and have IPR-accessingSteve Reinhardt
instructions use it (instead of IntALU, as before). Default config has a single non-pipelined 3-cycle unit. A bit conservative for the ev6 (some are 1, some are 3). arch/alpha/isa_desc: Make hw_mfpr and hw_mtpr use IprAccessOp op class. cpu/full_cpu/op_class.hh: Add IprAccess. --HG-- extra : convert_revision : d4103da3343a586936839e29981fd15d6930d442
2005-02-25Make all StaticInst methods const. StaticInst objects represent aSteve Reinhardt
particular binary machine instruction and should be immutable after they are constructed. cpu/simple_cpu/simple_cpu.hh: Make StaticInst parameters const. --HG-- extra : convert_revision : e535fa10c842ce173336323f39d9108c1847f8ba
2005-02-25Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5Steve Reinhardt
into zizzer.eecs.umich.edu:/z/stever/bk/m5 --HG-- extra : convert_revision : 312d9edd677afef6c973c0cb45af4f827a2b881a
2005-02-25Make the SimConsole device dump its output to a file by defaultNathan Binkert
--HG-- extra : convert_revision : 59cc7c3234d1bc96919d08dc0ec7584d8aff1d6f
2005-02-25Fix timing modeling of faults: functionally the very next instruction afterSteve Reinhardt
a faulting instruction is the fault handler, which appears as an independent instruction to the timing model. New code will stall fetch and not fetch the fault handler as long as there's a faulting instruction in the pipeline (i.e., the faulting inst has to commit first). Also fix Ali's bad-address assertion that doesn't apply to full system. Added some more debugging support in the process. Hopefully we'll move to the new cpu model soon and we won't need it anymore. arch/alpha/alpha_memory.cc: Reorganize lookup() so we can trace the result of the lookup as well. arch/alpha/isa_traits.hh: Add NoopMachInst (so we can insert them in the pipeline on ifetch faults). base/traceflags.py: Replace "Dispatch" flag with "Pipeline" (since I added similar DPRINTFs in other pipe stages). cpu/exetrace.cc: Change default for printing mis-speculated instructions to true (since that's often what we want, and right now you can't change it from the command line...). --HG-- extra : convert_revision : a29a98a373076d62bbbb1d6f40ba51ecae436dbc
2005-02-24Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5Ali Saidi
--HG-- extra : convert_revision : a63405fac7237014c4ef8b765d31d59d3e1bb500
2005-02-24if we have an invalid addr and it's not a miss-speculation panicAli Saidi
--HG-- extra : convert_revision : 4c906f68c6168100f7e8f2030b1f957c88900768
2005-02-24Fix it so that using a sampler works with the occ and ocp configurations.Ron Dreslinski
--HG-- extra : convert_revision : a990503a6c01a156230d8910ad86876d09b4f1b3
2005-02-24Print an error message if a Checkpoint number was defined, but no checkpoint ↵Ron Dreslinski
file was sourced --HG-- extra : convert_revision : 302c1d6720c0ee24fcfc266cd99f501af734a452
2005-02-23Fix the python panic messageNathan Binkert
sim/pyconfig/m5config.py: Fix panic --HG-- extra : convert_revision : 56d93398e992ed6e95380f6dcdb61cbee54b3893
2005-02-23Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5Ali Saidi
--HG-- extra : convert_revision : f149b8ea762d4a83ef76b3bb95f28e0709391ecf
2005-02-23added two validation rcs filesAli Saidi
--HG-- extra : convert_revision : 19e57e5192be3435d72652e3b36aac3b6e43d81c
2005-02-23Added mmap start and end so detailed CPU can know if an access isAli Saidi
in a mmaped region --HG-- extra : convert_revision : e4ee0520c84d94a0d2e804d02035228766abe71f
2005-02-23Updated Monet configurationsAli Saidi
--HG-- extra : convert_revision : 8f9c875541adcf685effcfb2e138f2dbb8463137
2005-02-22Small initial steps toward generating C++ param structsSteve Reinhardt
from Python object descriptions. Mostly cleanup of Python code based on things I encountered trying to figure out what's going on. Main reason I'm committing this now is to transfer work from my laptop to zizzer. sim/pyconfig/m5config.py: Small steps toward param struct generation: all param objects should now have a _cppname attribute that holds their corresponding C++ type name. Made Param ptype attribute an actual type instead of a string. String is still stored in ptype_string. Get rid of AddToPath() and Import() (redundant copies are in importer, and that seems to be the more logical place for them). Add a few comments, delete some unused code. test/genini.py: A few fixes to make the environment more compatible with what really happens when configs are executed from the m5 binary. --HG-- extra : convert_revision : 9fc8f72cd0c22ba3deada02f37484787342534f2
2005-02-21Set the proper job name for statistics if we're using a JOBNAMENathan Binkert
and JOBFILE --HG-- extra : convert_revision : 44253a39f40efcbbcda226701b0e97d8ea46cf1e
2005-02-21formatting fixesNathan Binkert
--HG-- extra : convert_revision : 8b9bfed29b66e8bce11448f175273f5ebb6876b2
2005-02-19Clean up CPU stuff and make it use params structsNathan Binkert
cpu/base_cpu.cc: cpu/base_cpu.hh: Convert the CPU stuff to use a params struct cpu/memtest/memtest.cc: The memory tester is really not a cpu, so don't derive from BaseCPU since it just makes things a pain in the butt. Keep track of max loads in the memtest class now that the base class doesn't do it for us. Don't have any default parameters. cpu/memtest/memtest.hh: The memory tester is really not a cpu, so don't derive from BaseCPU since it just makes things a pain in the butt. Keep track of max loads in the memtest class now that the base class doesn't do it for us. cpu/simple_cpu/simple_cpu.cc: Convert to use a params struct. remove default parameters cpu/simple_cpu/simple_cpu.hh: convert to use a params struct cpu/trace/opt_cpu.cc: cpu/trace/opt_cpu.hh: cpu/trace/trace_cpu.cc: cpu/trace/trace_cpu.hh: this isn't really a cpu. don't derive from BaseCPU objects/MemTest.mpy: we only need one max_loads parameter sim/main.cc: Don't check for the number of CPUs since we may be doing something else going on. If we don't have anything to simulate, the simulator will exit anyway. --HG-- extra : convert_revision : 2195a34a9ec90b5414324054ceb3bab643540dd5
2005-02-17Include errno.h to fix compile errors in gcc 3.4Kevin Lim
sim/main.cc: Include errno.h --HG-- extra : convert_revision : ff91579ae590b3c1d11f7468b71f295e6f3edd68
2005-02-17rename the simple cpu's multiplier parameter. call it width.Nathan Binkert
it makes more sense and is less confusing. cpu/simple_cpu/simple_cpu.cc: cpu/simple_cpu/simple_cpu.hh: width is a better name than multiplier --HG-- extra : convert_revision : ea2fa4faa160f5657aece41df469bbc9f7244b21
2005-02-17Fix compile on linuxNathan Binkert
sim/main.cc: For some unknown reason linux's basename doesn't take a const char * --HG-- extra : convert_revision : 30289195881e16a05429f7025abab7914a9e3eb6
2005-02-17Make code more portable.Nathan Binkert
sim/main.cc: basename is in libgen --HG-- extra : convert_revision : 1af6ff2f492b4deee9e56edfa5ee6ea235cd4eb0
2005-02-17Several tweaks to make binning work in any simulationNathan Binkert
configuration so that we can always have binning on. base/statistics.cc: If we're binning, and there is no bin active at the time we check all stats stuff, create a bin. base/statistics.hh: FS_MEASURE doesn't exist anymore base/stats/text.cc: don't print out bin names if there is only one bin sim/process.cc: don't zero stats. It happens automatically. Don't activate the context at the time it is registered, instead activate the first context in a startup callback. sim/process.hh: Add startup callback to initialize the first exec context --HG-- extra : convert_revision : bcb23cdb184b0abf7cecd79902f8a59b50f71fe4
2005-02-14Merge zizzer:/bk/m5 into zeep.eecs.umich.edu:/z/saidi/work/m5Ali Saidi
--HG-- extra : convert_revision : c807a78d9c3f3be51763dab9685aa4b7361c585c
2005-02-14undoing change per nates requestAli Saidi
--HG-- extra : convert_revision : c5c2fd88dfd8d893da51c2b80907260ec14a7593
2005-02-14Make it so we append jobs to the joblist in the for loop notNathan Binkert
outside of the loop so we get all of the jobs, not just the last one. util/pbs/send.py: fix indent --HG-- extra : convert_revision : eee9546b4945ff949fdfdf339fc95a23603b47d3
2005-02-14output dir changes to python filesAli Saidi
util/pbs/job.py: pass output dir to m5 directly --HG-- extra : convert_revision : 00d1568bb2da3b3e646fc75b4884314bf4cb2d71
2005-02-13MergeAli Saidi
--HG-- extra : convert_revision : 10c28ac66c7e71615a239783e21ab36a47de992c
2005-02-13build mysql version if libraries existAli Saidi
add dprintf on alignment faults fix RR benchmark rcS script name Add Dual test without rcS script Update Monet to be closer to the real thing Fix p4/monet configs Add a way to read the DRIR register with at 32bit access for validation SConscript: build/SConstruct: always use mysql if the libraries are installed arch/alpha/alpha_memory.cc: Add a DPRINTF to print alignment faults when they happen dev/tsunami_cchip.cc: Add a way to read the DRIR for validation. --HG-- extra : convert_revision : 8c112c958f36b785390c46e70a889a79c6bea015
2005-02-11Merge zizzer.eecs.umich.edu:/bk/m5Nathan Binkert
into ziff.eecs.umich.edu:/z/binkertn/research/m5/merge --HG-- extra : convert_revision : 5d73046310a64b80a6ba3832df3b30b55532d707
2005-02-11Rework the command line paramters for python output and howNathan Binkert
output files and the output directory are are handled. Make the output directory configuration via a command line parameter, or an environment variable. SConscript: Add new output file stuff base/misc.cc: dev/simconsole.cc: use new output file code cpu/base_cpu.cc: use new output file code to generate output streams dev/etherdump.cc: use the output file code to find the output directory use a real stream instead of a pointer dev/etherdump.hh: use a real stream instead of a pointer objects/Root.mpy: output_dir and config_output_file are not longer configured here. sim/main.cc: - Completely rework the command line argument passing to deal with changes in python and output files. - Update help output to reflect changes. - Remove all direct support for .ini files. They are strictly for intermediate representation. - Remove the --foo:bar=blah syntax for .ini files and add --foo.bar=blah syntax for python. This will generate: foo.bar = 'blah' in the python script. - Add '-d' to set the output directory. - Use new output file code to access the output stream. sim/serialize.cc: use the new code to find the output directory sim/universe.cc: Get rid of makeOutputStream. Use the new output file code. Remove output_dir and config_output_file as parameters. --HG-- extra : convert_revision : df2f0e13d401c3a60cae1239aa1ec3511721544d
2005-02-11Make sure we have all values when trying to generate the ini fileNathan Binkert
sim/pyconfig/m5config.py: When getting all values, make sure we get the ones that are parameter defaults as well. --HG-- extra : convert_revision : 2b1c4b2f27dfab17ef9df18d7e5936e4a00bb12e
2005-02-10Some cosmetic changes to MyPOpenNathan Binkert
util/pbs/pbs.py: More tweaks that I forgot --HG-- extra : convert_revision : 7298f91b80bc7d8d946be93fc622e5f9f6e155f9
2005-02-09More fixes to the pbs stuff to make it more robust.Nathan Binkert
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-09Fix bug in trace param context so we can compileNathan Binkert
--HG-- extra : convert_revision : 667c76132adb143e1f2c0726c80ad3e567a530aa
2005-02-09More fixes for running from anywhere.Nathan Binkert
util/pbs/send.py: always access the job directory via full path --HG-- extra : convert_revision : 1792aadb39428e7c91953ac58f6da212b7f92835
2005-02-09enable the Trace, Statistics, and Serialize param contexts.Nathan Binkert
objects/Root.mpy: Fake the param context stuff for now. sim/param.cc: Make empty vector enums work sim/serialize.cc: serialize_dir is always valid --HG-- extra : convert_revision : c46373f0f4c70e6a2f01a81c0fa6bacab72d4c4f
2005-02-09Fixes to thes pbs send scriptNathan Binkert
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-09Add the split_first and split_last functions on strings.Nathan Binkert
base/str.cc: base/str.hh: Add a couple functions that allow you to split a string at the first or last instance of a delimiter. --HG-- extra : convert_revision : 2af22639e1b67ac61577c00475a555841a56f902
2005-02-09Fix the panic message so that it looks more like M5's panic.Nathan Binkert
Make it so the same path is not added to the system path twice. --HG-- extra : convert_revision : fe18db38cc4e335ad3525a364e9f8faf62b60e52
2005-02-09fix indent (so emacs and vi aren't screwed up.)Nathan Binkert
--HG-- extra : convert_revision : 589f37476fec14aa5e3c6e018631e291113d4e69
2005-02-05Tweak genini.Nathan Binkert
test/genini.py: Make it possible to run genini from a different directory. --HG-- extra : convert_revision : 57cfb010d6114512040bf334ea21c9ed87234be0