Download
From gem5
Getting gem5
- We are no longer distributing specific releases of gem5 or M5 as tarballs. The latest gem5 source code (including the alpha-system and encumbered files) is available via our Mercurial repository host at http://repo.gem5.org.
- It is strongly recommend that you get a copy of gem5 by using Mercurial and the instructions on this page.
- Install mercurial (hg). This is available in the mercurial package on Ubuntu and Redhat and OS X Fink
- For the stable repository:
hg clone http://repo.gem5.org/gem5
or the development repositoryhg clone http://repo.gem5.org/gem5
- The stable repository is updated about once every 6 months, while the development repository is continuously updated but occasionally breaks.
- After you clone the repository you can update it by typing
hg pull
andhg update
- But you really should read the documentation on this page.
- If you want to download gem5 without installing Mercurial, you can get a tarball
Useful Software not in mercuriall
Full-System Stuff
- Alpha
- Full System Files -- Pre-compiled Linux kernels, PALcode/Console code, and a filesystem
- Unchanged since M5 2.0 beta 3. If you already have these you don't need them again.
- linux-dist -- Everything you need to create your own disk image and compile everything in it from scratch
- Full System Files -- Pre-compiled Linux kernels, PALcode/Console code, and a filesystem
- ARM
- VExpress_EMM kernel and config -- Pre-compiled Linux 3.2 VExpress_EMM kernel and a config file that goes with it. This kernel is needed if you want to simulated more than 256MB of RAM. Pass --kernel=/path/to/vmlinux.arm.smb.fb.3.2 --machine-type=VExpress_EMM on the command line. The source used to build the kernel is available here. You'll still need the file systems below.
- New Full System Files -- Pre-compiled Linux kernel, and file systems, and kernel config files. This includes both a cut-down linux and a full ubuntu linux.
- Old Full System Files -- Older pre-compiled Linux kernel, and file system. New users should use package above. This wil likely be removed soon.
- BBench for gem5 -- Full-system Android files and BBench, a web-browser benchmark.
- Tarballs of generic file systems are available from Linaro. Scroll down to the Developers and Community Builds section. Some work will be required to make these suitable for simulation, but they're a reasonable starting point.
- X86
- Full System Files -- The kernel used for regressions, an SMP version of it, and a disk image
- config files -- Config files for both of the above kernels, 2.6.25.1 and 2.6.28.4
- (The
mkblankimage.sh
script to create a blank disk image that used to be downloadable here is now included in the m5 repository, in theutil
directory.)
Benchmarks
- For information about running Android on gem5 and using the web browser benchmark, see BBench-gem5.
- SPLASH benchmarks -- See the Splash benchmarks page for more information
Pre-compiled Cross-compilers
Externally supplied cross compilers:
- ARM cross compilers from Code Sorcery -- These are high-quality cross compilers that are updated frequently
- Ubuntu users can simply install the gcc-arm-linux-gnueabi and libc6-dev-armel-cross packages
- MIPS cross compilers from Code Sorcery
All generated with crosstool for x86 linux hosts/linux targets
- Alpha: gcc-3.4.3, gcc-4.3.2, glibc-2.6.1 (NPTL,x86/64), gcc-4.3.2, glibc-2.6.1 (NPTL,x86/32)
- SPARC64