README revision 1850
111384Ssteve.reinhardt@amd.comThis is release m5_1.1 of the M5 simulator.
211384Ssteve.reinhardt@amd.com
38464SN/AThis file contains brief "getting started" information and release
48464SN/Anotes.  For more information, see http://m5.eecs.umich.edu.  If you
57860SN/Ahave questions, please send mail to m5sim-users@lists.sourceforge.net.
611960Sgabeblack@google.com
711960Sgabeblack@google.comWHAT'S INCLUDED (AND NOT)
811960Sgabeblack@google.com-------------------------
911960Sgabeblack@google.com
1010798Ssteve.reinhardt@amd.comSince you're reading this file, presumably you've managed to untar the
117860SN/Adistribution.  The archive you've unpacked has three subdirectories:
127860SN/A - m5: the simulator itself
137860SN/A - m5-test: regression tests and scripts to run them
147860SN/A - ext: less-common external packages needed to build m5
157860SN/A - alpha-system: source for Alpha console and PALcode
167860SN/A
177860SN/AM5 is a capable, full-system simulator that current supports both Linux
187860SN/A2.4/2.6 and the proprietary Compaq/HP Tru64 version of Unix. We are able 
197860SN/Ato distribute Linux bootdisks, but we are unable to distribute bootable
207860SN/Adisk images of Tru64 Unix. If you have a Tru64 license and are interested 
217860SN/Ain obtaining disk images, contact us at m5-dev@eecs.umich.edu.
227860SN/A
237860SN/AWHAT'S NEEDED
247860SN/A-------------
257860SN/A- GCC (version 3.3 or 3.4 recommended)
267860SN/A- Python 2.3 or newer
277860SN/A- SCons 0.96.1 (see http://www.scons.org)
287860SN/A
297860SN/AWHAT'S RECOMMENDED
307860SN/A------------------
317860SN/A- MySQL (for statistics complex statistics storage/retrieval)
327860SN/A- Python-MysqlDB (for statistics analysis) 
337860SN/A
347860SN/AGETTING STARTED
357860SN/A---------------
367860SN/A
377860SN/AThere are two different build targets and three optimizations levels:
387860SN/A
397860SN/ATarget:
407860SN/A-------
417860SN/AALPHA_SE - Syscall emulation simulation
427860SN/AALPHA_FS - Full system simulation
437860SN/A
447860SN/AOptimization:
457860SN/A-------------
467860SN/Am5.debug - debug version of the code with tracing and without optimization
477860SN/Am5.opt   - optimized version of code with tracing
487860SN/Am5.fast  - optimized version of the code without tracing and asserts
497860SN/A
507860SN/ADifferent targets are built in different subdirectories of m5/build.
517860SN/ABinaries with the same target but different optimization levels share
527860SN/Athe same directory.  Note that you can build m5 in any directory you
537860SN/Achoose by copying the SConstruct file there and creating symbolic links
547860SN/Ato the 'm5' and 'ext' directories.
557860SN/A
567860SN/AThe following steps will build and test the simulator.  The variable
577860SN/A"$top" refers to the top directory where you've unpacked the files,
587860SN/Ai.e., the one containing the m5, m5-test, and ext directories.  If you
597860SN/Ahave a multiprocessor system, you should give scons a "-j N" argument (like
607860SN/Amake) to run N jobs in parallel.
617860SN/A
627860SN/ATo build and test the syscall-emulation simulator:
637860SN/A
647860SN/A1. In $top/m5/build, run "scons ALPHA_SE/m5.opt".
657860SN/A2. In $top/m5-test, run "./do-tests.pl -B ALPHA_SE".
667860SN/A
677860SN/AThe tests should end with "finished do-tests successfully!"
687860SN/ANote: if you're running under Cygwin several tests will fail with an
697860SN/A"EIO icount mismatch".  This is due to the lack of fesetround() under
7011960Sgabeblack@google.comCygwin causing differences in floating-point rounding.
71
72To build and test the full-system simualator:
73
741. Download the full-system binary package from XXX.  This package includes
75   disk images and kernel, palcode, and console binaries for Linux and FreeBSD.
762. Edit SYSTEMDIR in $top/m5-test/SysPaths.py to point to your local copy
77   of the binaries.
783. In $top/m5/build, run "scons ALPHA_FS/m5.opt".
794. In $top/m5-test, run "./do-tests.pl -B ALPHA_FS".
80
81