Merge zizzer.eecs.umich.edu:/z/m5/Bitkeeper/m5
[gem5.git] / README
1 This is release m5_1.1 of the M5 simulator.
2
3 This file contains brief "getting started" instructions. For more
4 information, see http://m5.eecs.umich.edu. If you have questions,
5 please send mail to m5sim-users@lists.sourceforge.net.
6
7 WHAT'S INCLUDED (AND NOT)
8 -------------------------
9
10 The basic source release includes these subdirectories:
11 - m5: the simulator itself
12 - m5-test: regression tests
13 - ext: less-common external packages needed to build m5
14 - alpha-system: source for Alpha console and PALcode
15
16 To run full-system simulations, you will need compiled console,
17 PALcode, and kernel binaries and one or more disk images. These files
18 are collected in a separate archive, m5_system_1.1.tar.bz2. This file
19 is included on the CD release, or you can download it separately from
20 Sourceforge.
21
22 M5 supports Linux 2.4/2.6, FreeBSD, and the proprietary Compaq/HP
23 Tru64 version of Unix. We are able to distribute Linux and FreeBSD
24 bootdisks, but we are unable to distribute bootable disk images of
25 Tru64 Unix. If you have a Tru64 license and are interested in
26 obtaining disk images, contact us at m5-dev@eecs.umich.edu.
27
28 The CD release includes a few extra goodies, such as a tar file
29 containing doxygen-generated HTML documentation (html-docs.tar.gz), a
30 set of Linux source patches (linux_m5-2.6.8.1.diff), and the scons
31 program needed to build M5. If you do not have the CD, the same HTML
32 documentation is available online at http://m5.eecs.umich.edu/docs,
33 the Linux source patches are available at
34 http://m5.eecs.umich.edu/dist/linux_m5-2.6.8.1.diff, and the scons
35 program is available from http://www.scons.org.
36
37 WHAT'S NEEDED
38 -------------
39 - GCC version 3.3 or newer
40 - Python 2.3 or newer
41 - SCons 0.96.1 or newer (see http://www.scons.org)
42
43 WHAT'S RECOMMENDED
44 ------------------
45 - MySQL (for statistics complex statistics storage/retrieval)
46 - Python-MysqlDB (for statistics analysis)
47
48 GETTING STARTED
49 ---------------
50
51 There are two different build targets and three optimizations levels:
52
53 Target:
54 -------
55 ALPHA_SE - Syscall emulation simulation
56 ALPHA_FS - Full system simulation
57
58 Optimization:
59 -------------
60 m5.debug - debug version of the code with tracing and without optimization
61 m5.opt - optimized version of code with tracing
62 m5.fast - optimized version of the code without tracing and asserts
63
64 Different targets are built in different subdirectories of m5/build.
65 Binaries with the same target but different optimization levels share
66 the same directory. Note that you can build m5 in any directory you
67 choose;p just configure the target directory using the 'mkbuilddir'
68 script in m5/build.
69
70 The following steps will build and test the simulator. The variable
71 "$top" refers to the top directory where you've unpacked the files,
72 i.e., the one containing the m5, m5-test, and ext directories. If you
73 have a multiprocessor system, you should give scons a "-j N" argument (like
74 make) to run N jobs in parallel.
75
76 To build and test the syscall-emulation simulator:
77
78 cd $top/m5/build
79 scons ALPHA_SE/test/opt/quick
80
81 This process takes under 10 minutes on a dual 3GHz Xeon system (using
82 the '-j 4' option).
83
84 To build and test the full-system simulator:
85
86 1. Unpack the full-system binaries from m5_system_1.1.tar.bz2. (See
87 above for directions on obtaining this file if you don't have it.)
88 This package includes disk images and kernel, palcode, and console
89 binaries for Linux and FreeBSD.
90 2. Edit the SYSTEMDIR search path in $top/m5-test/SysPaths.py to
91 include the path to your local copy of the binaries.
92 3. In $top/m5/build, run "scons ALPHA_FS/test/opt/quick".
93
94 This process also takes under 10 minutes on a dual 3GHz Xeon system
95 (again using the '-j 4' option).
96