gem5 resources is a repository providing sources for artifacts known and proven compatible with the gem5 architecture simulator. These resources are not necessary for the compilation or running of gem5, but may aid users in producing certain simulations.
gem5 has been designed with flexibility in mind. Users may simulate a wide variety of hardware, with an equally wide variety of workloads. However, requiring users to find and configure workloads for gem5 (their own disk images, their own OS boots, their own tests, etc.) is a significant investment, and a hurdle to many.
The purpose of gem5 resources is therefore to provide a stable set of commonly used resources, with proven and documented compatibility with gem5. In addition to this, gem5 resources also puts emphasis on reproducibility of experiments by providing citable, stable resources, tied to a particular release of gem5.
If you find one of the gem5-resources useful be sure to cite both the resources (see the README) and the gem5art and gem5-resources paper.
@inproceedings{bruce2021gem5art,
title={Enabling Reproducible and Agile Full-System Simulation},
author={Bruce, Bobby R. and Akram, Ayaz and Nguyen, Hoa and Roarty, Kyle and Samani, Mahyar and Fariborz, Marjan and Trivikram, Reddy and Sinclair, Matthew D. and Lowe-Power, Jason},
booktitle={In Proceedings of the 2021 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS '21)},
year={2021},
organization={IEEE}
}
Resources to build a disk image with the SPEC 2017 workloads.
This resource implementes the NPB benchmark .
Resources to build a disk image with the parsec workloads.
This resource creates a disk image for which you can create a checkpoint after linux boot and then restore using a different scriptfile.
Linux kernel config files that have been tested with gem5.
Source for ‘m5-exit-repeat’. A ‘m5-exit-repeat’ binary runs the m5_exit(0)
command in an infinite loop. This is useful for testing exit event handlers.
Source for ‘matrix-multiply’. A matrix-multiply binary runs a multiplication on two 100x100 matrixes. The sum of the multiplied matrix is printed upon completion.
Source for ‘matrix-multiply-omp’ resources. The matrix-multiple-omp binary runs a multiplication on two 300x300 matrixes followed by a multiplication of two 150x150 matrices. These two matrix opperations are iterated over by an amount specified by the user via the first parameter. This binary utilizes OpenMP to parallelize the matrix operation. The number of threads used is specified by the user via the second parameter. This was provided to the gem5 project by the National University of Singapore.
Sources for ‘print-this’ binary.
Resources to build a disk image with the VEGA HeteroSync workloads.
Resources to build a disk image with the VEGA Square workload.
Resources to build a disk image with the VEGA DNNMark workloads.
Resources to build a disk image with the VEGA HACC (halo-finder) workload.
Resources to build a disk image with the VEGA LULESH workload.
Resources to build a disk image with the VEGA HIP-Sample-Applications workloads.
Resources to build a disk image with the VEGA Pannotia SSSP workload.
Resources to build a disk image with the VEGA Pannotia BC workload.
Resources to build a disk image with the VEGA Pannotia FW workload.
Resources to build a disk image with the VEGA Pannotia PageRank workload.
Resources to build a disk image with the VEGA Pannotia MIS workload.
Resources to build a disk image with the VEGA Pannotia Color workload.
Resources to build a disk image for each of the VEGA Pannotia workloads.
Resources to build a disk image with the VEGA PENNANT workload.
Resources to build OpenSBI bootloader that works with gem5 full system simulations.
This resource implementes the GAP benchmark suite.
Resources to build a generic x86-ubuntu or arm-ubuntu disk image and run a “boot-exit” test.
Resources to build a riscv disk image, a riscv boot loader and points to the gem5 scripts to run riscv Linux FS simulations.
Resources to build a generic riscv-ubuntu disk image.
Sources for the LupV bootloader/kernel and disk image.
Resources to build a riscv bootloader containing a linux kernel and a workload expected to run at early userspace.
Resources to build a disk image with the SPEC 2006 workloads.
Resources to build an x86 Ubuntu disk image with GPU and ML stacks
This website is under construction. You can see the following links for the current information on gem5-resources. More information will be here soon!