README revision 1905
11850Sstever@eecs.umich.eduThis is release m5_1.1 of the M5 simulator. 2131Sstever@eecs.umich.edu 31905Sstever@eecs.umich.eduThis file contains brief "getting started" instructions. For more 41905Sstever@eecs.umich.eduinformation, see http://m5.eecs.umich.edu. If you have questions, 51905Sstever@eecs.umich.eduplease 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 101905Sstever@eecs.umich.eduThe basic source release includes these subdirectories: 11131Sstever@eecs.umich.edu - m5: the simulator itself 121905Sstever@eecs.umich.edu - m5-test: regression tests 13131Sstever@eecs.umich.edu - ext: less-common external packages needed to build m5 141850Sstever@eecs.umich.edu - alpha-system: source for Alpha console and PALcode 15131Sstever@eecs.umich.edu 161905Sstever@eecs.umich.eduTo run full-system simulations, you will need compiled console, 171905Sstever@eecs.umich.eduPALcode, and kernel binaries and one or more disk images. These files 181905Sstever@eecs.umich.eduare collected in a separate archive, m5_system_1.1.tar.bz2. This file 191905Sstever@eecs.umich.eduis included on the CD release, or you can download it separately from 201905Sstever@eecs.umich.eduSourceforge. 211905Sstever@eecs.umich.edu 221905Sstever@eecs.umich.eduM5 supports Linux 2.4/2.6, FreeBSD, and the proprietary Compaq/HP 231905Sstever@eecs.umich.eduTru64 version of Unix. We are able to distribute Linux and FreeBSD 241905Sstever@eecs.umich.edubootdisks, but we are unable to distribute bootable disk images of 251905Sstever@eecs.umich.eduTru64 Unix. If you have a Tru64 license and are interested in 261905Sstever@eecs.umich.eduobtaining disk images, contact us at m5-dev@eecs.umich.edu. 271905Sstever@eecs.umich.edu 281905Sstever@eecs.umich.eduThe CD release includes a few extra goodies, such as a tar file 291905Sstever@eecs.umich.educontaining doxygen-generated HTML documentation (html-docs.tar.gz), a 301905Sstever@eecs.umich.eduset of Linux source patches (linux_m5-2.6.8.1.diff), and the scons 311905Sstever@eecs.umich.eduprogram needed to build M5. If you do not have the CD, the same HTML 321905Sstever@eecs.umich.edudocumentation is available online at http://m5.eecs.umich.edu/docs, 331905Sstever@eecs.umich.eduthe Linux source patches are available at 341905Sstever@eecs.umich.eduhttp://m5.eecs.umich.edu/dist/linux_m5-2.6.8.1.diff, and the scons 351905Sstever@eecs.umich.eduprogram is available from http://www.scons.org. 361028Ssaidi@eecs.umich.edu 371028Ssaidi@eecs.umich.eduWHAT'S NEEDED 381028Ssaidi@eecs.umich.edu------------- 391901Sstever@eecs.umich.edu- GCC version 3.3 or newer 401850Sstever@eecs.umich.edu- Python 2.3 or newer 411901Sstever@eecs.umich.edu- SCons 0.96.1 or newer (see http://www.scons.org) 421028Ssaidi@eecs.umich.edu 431028Ssaidi@eecs.umich.eduWHAT'S RECOMMENDED 441028Ssaidi@eecs.umich.edu------------------ 451850Sstever@eecs.umich.edu- MySQL (for statistics complex statistics storage/retrieval) 461850Sstever@eecs.umich.edu- Python-MysqlDB (for statistics analysis) 47131Sstever@eecs.umich.edu 48131Sstever@eecs.umich.eduGETTING STARTED 49131Sstever@eecs.umich.edu--------------- 50131Sstever@eecs.umich.edu 511850Sstever@eecs.umich.eduThere are two different build targets and three optimizations levels: 52131Sstever@eecs.umich.edu 531028Ssaidi@eecs.umich.eduTarget: 541028Ssaidi@eecs.umich.edu------- 551704Sstever@eecs.umich.eduALPHA_SE - Syscall emulation simulation 561850Sstever@eecs.umich.eduALPHA_FS - Full system simulation 571028Ssaidi@eecs.umich.edu 581028Ssaidi@eecs.umich.eduOptimization: 591028Ssaidi@eecs.umich.edu------------- 601028Ssaidi@eecs.umich.edum5.debug - debug version of the code with tracing and without optimization 611028Ssaidi@eecs.umich.edum5.opt - optimized version of code with tracing 621028Ssaidi@eecs.umich.edum5.fast - optimized version of the code without tracing and asserts 631028Ssaidi@eecs.umich.edu 641850Sstever@eecs.umich.eduDifferent targets are built in different subdirectories of m5/build. 651850Sstever@eecs.umich.eduBinaries with the same target but different optimization levels share 661850Sstever@eecs.umich.eduthe same directory. Note that you can build m5 in any directory you 671905Sstever@eecs.umich.educhoose;p just configure the target directory using the 'mkbuilddir' 681905Sstever@eecs.umich.eduscript in m5/build. 691850Sstever@eecs.umich.edu 701850Sstever@eecs.umich.eduThe following steps will build and test the simulator. The variable 711850Sstever@eecs.umich.edu"$top" refers to the top directory where you've unpacked the files, 721850Sstever@eecs.umich.edui.e., the one containing the m5, m5-test, and ext directories. If you 731850Sstever@eecs.umich.eduhave a multiprocessor system, you should give scons a "-j N" argument (like 741850Sstever@eecs.umich.edumake) to run N jobs in parallel. 751850Sstever@eecs.umich.edu 761850Sstever@eecs.umich.eduTo build and test the syscall-emulation simulator: 771850Sstever@eecs.umich.edu 781869Sstever@eecs.umich.edu cd $top/m5/build 791869Sstever@eecs.umich.edu scons ALPHA_SE/test/opt/quick 801850Sstever@eecs.umich.edu 811905Sstever@eecs.umich.eduThis process takes under 10 minutes on a dual 3GHz Xeon system (using 821905Sstever@eecs.umich.eduthe '-j 4' option). 831850Sstever@eecs.umich.edu 841905Sstever@eecs.umich.eduTo build and test the full-system simulator: 851850Sstever@eecs.umich.edu 861905Sstever@eecs.umich.edu1. Unpack the full-system binaries from m5_system_1.1.tar.bz2. (See 871905Sstever@eecs.umich.edu above for directions on obtaining this file if you don't have it.) 881905Sstever@eecs.umich.edu This package includes disk images and kernel, palcode, and console 891905Sstever@eecs.umich.edu binaries for Linux and FreeBSD. 901905Sstever@eecs.umich.edu2. Edit the SYSTEMDIR search path in $top/m5-test/SysPaths.py to 911905Sstever@eecs.umich.edu include the path to your local copy of the binaries. 921905Sstever@eecs.umich.edu3. In $top/m5/build, run "scons ALPHA_FS/test/opt/quick". 931905Sstever@eecs.umich.edu 941905Sstever@eecs.umich.eduThis process also takes under 10 minutes on a dual 3GHz Xeon system 951905Sstever@eecs.umich.edu(again using the '-j 4' option). 961905Sstever@eecs.umich.edu 97