README revision 1901
11850Sstever@eecs.umich.eduThis is release m5_1.1 of the M5 simulator.
2131Sstever@eecs.umich.edu
3131Sstever@eecs.umich.eduThis file contains brief "getting started" information and release
4131Sstever@eecs.umich.edunotes.  For more information, see http://m5.eecs.umich.edu.  If you
5131Sstever@eecs.umich.eduhave questions, please send mail to m5sim-users@lists.sourceforge.net.
6131Sstever@eecs.umich.edu
7131Sstever@eecs.umich.eduWHAT'S INCLUDED (AND NOT)
8131Sstever@eecs.umich.edu-------------------------
9131Sstever@eecs.umich.edu
10131Sstever@eecs.umich.eduSince you're reading this file, presumably you've managed to untar the
11131Sstever@eecs.umich.edudistribution.  The archive you've unpacked has three subdirectories:
12131Sstever@eecs.umich.edu - m5: the simulator itself
13131Sstever@eecs.umich.edu - m5-test: regression tests and scripts to run them
14131Sstever@eecs.umich.edu - ext: less-common external packages needed to build m5
151850Sstever@eecs.umich.edu - alpha-system: source for Alpha console and PALcode
16131Sstever@eecs.umich.edu
171028Ssaidi@eecs.umich.eduM5 is a capable, full-system simulator that current supports both Linux
181028Ssaidi@eecs.umich.edu2.4/2.6 and the proprietary Compaq/HP Tru64 version of Unix. We are able 
191028Ssaidi@eecs.umich.eduto distribute Linux bootdisks, but we are unable to distribute bootable
201028Ssaidi@eecs.umich.edudisk images of Tru64 Unix. If you have a Tru64 license and are interested 
211028Ssaidi@eecs.umich.eduin obtaining disk images, contact us at m5-dev@eecs.umich.edu.
221028Ssaidi@eecs.umich.edu
231028Ssaidi@eecs.umich.eduWHAT'S NEEDED
241028Ssaidi@eecs.umich.edu-------------
251901Sstever@eecs.umich.edu- GCC version 3.3 or newer
261850Sstever@eecs.umich.edu- Python 2.3 or newer
271901Sstever@eecs.umich.edu- SCons 0.96.1 or newer (see http://www.scons.org)
281028Ssaidi@eecs.umich.edu
291028Ssaidi@eecs.umich.eduWHAT'S RECOMMENDED
301028Ssaidi@eecs.umich.edu------------------
311850Sstever@eecs.umich.edu- MySQL (for statistics complex statistics storage/retrieval)
321850Sstever@eecs.umich.edu- Python-MysqlDB (for statistics analysis) 
33131Sstever@eecs.umich.edu
34131Sstever@eecs.umich.eduGETTING STARTED
35131Sstever@eecs.umich.edu---------------
36131Sstever@eecs.umich.edu
371850Sstever@eecs.umich.eduThere are two different build targets and three optimizations levels:
38131Sstever@eecs.umich.edu
391028Ssaidi@eecs.umich.eduTarget:
401028Ssaidi@eecs.umich.edu-------
411704Sstever@eecs.umich.eduALPHA_SE - Syscall emulation simulation
421850Sstever@eecs.umich.eduALPHA_FS - Full system simulation
431028Ssaidi@eecs.umich.edu
441028Ssaidi@eecs.umich.eduOptimization:
451028Ssaidi@eecs.umich.edu-------------
461028Ssaidi@eecs.umich.edum5.debug - debug version of the code with tracing and without optimization
471028Ssaidi@eecs.umich.edum5.opt   - optimized version of code with tracing
481028Ssaidi@eecs.umich.edum5.fast  - optimized version of the code without tracing and asserts
491028Ssaidi@eecs.umich.edu
501850Sstever@eecs.umich.eduDifferent targets are built in different subdirectories of m5/build.
511850Sstever@eecs.umich.eduBinaries with the same target but different optimization levels share
521850Sstever@eecs.umich.eduthe same directory.  Note that you can build m5 in any directory you
531850Sstever@eecs.umich.educhoose by copying the SConstruct file there and creating symbolic links
541850Sstever@eecs.umich.eduto the 'm5' and 'ext' directories.
551850Sstever@eecs.umich.edu
561850Sstever@eecs.umich.eduThe following steps will build and test the simulator.  The variable
571850Sstever@eecs.umich.edu"$top" refers to the top directory where you've unpacked the files,
581850Sstever@eecs.umich.edui.e., the one containing the m5, m5-test, and ext directories.  If you
591850Sstever@eecs.umich.eduhave a multiprocessor system, you should give scons a "-j N" argument (like
601850Sstever@eecs.umich.edumake) to run N jobs in parallel.
611850Sstever@eecs.umich.edu
621850Sstever@eecs.umich.eduTo build and test the syscall-emulation simulator:
631850Sstever@eecs.umich.edu
641869Sstever@eecs.umich.edu	cd $top/m5/build
651869Sstever@eecs.umich.edu	scons ALPHA_SE/test/opt/quick
661850Sstever@eecs.umich.edu
671850Sstever@eecs.umich.eduTo build and test the full-system simualator:
681850Sstever@eecs.umich.edu
691901Sstever@eecs.umich.edu1. Unpack the full-system binaries from m5_system_1.1.tar.bz2.  This file
701901Sstever@eecs.umich.edu   is included on the CD release, or you can download it from
711901Sstever@eecs.umich.edu   http://m5.eecs.umich.edu/dist/ m5_system_1.1.tar.bz2.)  This package
721901Sstever@eecs.umich.edu   includes disk images and kernel, palcode, and console binaries
731901Sstever@eecs.umich.edu   for Linux and FreeBSD.
741850Sstever@eecs.umich.edu2. Edit SYSTEMDIR in $top/m5-test/SysPaths.py to point to your local copy
751850Sstever@eecs.umich.edu   of the binaries.
761869Sstever@eecs.umich.edu3. In $top/m5/build, run "scons ALPHA_FS/opt/test/quick".
771850Sstever@eecs.umich.edu
78