-This is release m5_1.0 of the M5 simulator.
+This is release m5_1.1 of the M5 simulator.
This file contains brief "getting started" information and release
notes. For more information, see http://m5.eecs.umich.edu. If you
- m5: the simulator itself
- m5-test: regression tests and scripts to run them
- ext: less-common external packages needed to build m5
- (currently ply and libelf)
+ - alpha-system: source for Alpha console and PALcode
M5 is a capable, full-system simulator that current supports both Linux
2.4/2.6 and the proprietary Compaq/HP Tru64 version of Unix. We are able
WHAT'S NEEDED
-------------
--GCC(3.X)
--Python(2.4+)
+- GCC (version 3.3 or 3.4 recommended)
+- Python 2.3 or newer
+- SCons 0.96.1 (see http://www.scons.org)
WHAT'S RECOMMENDED
------------------
--MySQL (for statistics complex statistics storage/retrieval)
--Python-MysqlDB (for statistics analysis)
+- MySQL (for statistics complex statistics storage/retrieval)
+- Python-MysqlDB (for statistics analysis)
GETTING STARTED
---------------
-The following steps will build and test the simulator. The variable
-"$top" refers to the top directory where you've unpacked the files,
-i.e., the one containing the m5, m5-test, and ext directories.
+There are two different build targets and three optimizations levels:
-There are three different build targets and three optimizations in each level:
Target:
-------
ALPHA_SE - Syscall emulation simulation
-ALPHA_FS - Linux full system simulation
-ALPHA_FS_TL - Tru64 (Turbolaser) Unix full system simulation
+ALPHA_FS - Full system simulation
Optimization:
-------------
m5.opt - optimized version of code with tracing
m5.fast - optimized version of the code without tracing and asserts
-cd $top/m5/build
-scons TARGET/OPTLEVL # e.g. ALPHA_FS/m5.opt, use -j N if you have a MP system
-cd $top/m5-test
-./do-tests.pl -B ALPHA_SE # test what you just built
-./do-tests.pl -B ALPHA_FS # test what you just built
-# wait for tests to run...
-# should end with "finished do-tests successfully!"
+Different targets are built in different subdirectories of m5/build.
+Binaries with the same target but different optimization levels share
+the same directory. Note that you can build m5 in any directory you
+choose by copying the SConstruct file there and creating symbolic links
+to the 'm5' and 'ext' directories.
+
+The following steps will build and test the simulator. The variable
+"$top" refers to the top directory where you've unpacked the files,
+i.e., the one containing the m5, m5-test, and ext directories. If you
+have a multiprocessor system, you should give scons a "-j N" argument (like
+make) to run N jobs in parallel.
+
+To build and test the syscall-emulation simulator:
+
+1. In $top/m5/build, run "scons ALPHA_SE/m5.opt".
+2. In $top/m5-test, run "./do-tests.pl -B ALPHA_SE".
+
+The tests should end with "finished do-tests successfully!"
+Note: if you're running under Cygwin several tests will fail with an
+"EIO icount mismatch". This is due to the lack of fesetround() under
+Cygwin causing differences in floating-point rounding.
+
+To build and test the full-system simualator:
+
+1. Download the full-system binary package from XXX. This package includes
+ disk images and kernel, palcode, and console binaries for Linux and FreeBSD.
+2. Edit SYSTEMDIR in $top/m5-test/SysPaths.py to point to your local copy
+ of the binaries.
+3. In $top/m5/build, run "scons ALPHA_FS/m5.opt".
+4. In $top/m5-test, run "./do-tests.pl -B ALPHA_FS".
+