Running-SPEC-CPU-Benchmarks-in-Full-System-Mode-with-gem5art

docx

School

University of South Dakota *

*We aren’t endorsed by this school

Course

250

Subject

Computer Science

Date

Jan 9, 2024

Type

docx

Pages

4

Uploaded by Acharya2Pramod

Report
Running SPEC CPU Benchmarks in Full System Mode with gem5art SPEC CPU 2017 benchmarks are essential evaluations for assessing computer processor performance. The gem5art tool simplifies the execution of these benchmarks within the gem5 simulator by providing a user-friendly interface for setup, execution, and result analysis. gem5art streamlines the simulation process and offers features that enhance result interpretation Concurrently, the gem5-resources project offers a comprehensive set of resources—like disk images, Linux kernels, and gem5 configurations—tailored explicitly for executing SPEC CPU 2017 benchmarks in the gem5 environment. These resources, specialized for improved benchmark accuracy, facilitate an efficient start for running these benchmarks The process for running SPEC CPU 2006 benchmarks largely mirrors that of SPEC CPU 2017, differing only in the use of the 'src/spec-2006' folder from gem5-resources instead of 'src/spec- 2017'. Below are the steps taken to conduct the experiment: Step 1: Acquiring gem5-resources and setting up the Experiment Folder: 1. git clone https://gem5.googlesource.com/public/gem5-resources 2. cd gem5-resources 3. git checkout 1fe56ffc94005b7fa0ae5634c6edc5e2cb0b7357 Step 2: Initialize git. 1. cd src/spec-2017 2. git init 3. git remote add origin https://remote-address/spec- experiment.git Step3: Document the root folder experiments_repo = Artifact.registerArtifact ( command = ''' git clone https://gem5.googlesource.com/public/gem5-resources cd gem5-resources git checkout 1fe56ffc94005b7fa0ae5634c6edc5e2cb0b7357 cd src/spec-2017
git init git remote add origin https://remote-address/spec- experiment.git ''' , typ = 'git repo' , name = 'spec2017 Experiment' , path = './' , cwd = './' , documentation = ''' local repo to run spec 2017 experiments with gem5 full system mode; resources cloned from https://gem5.googlesource.com/public/gem5-resources upto commit 1fe56ffc94005b7fa0ae5634c6edc5e2cb0b7357 of stable branch ''' ) Add a git ignore file and put the following in it. 1. *. pyc 2. m5out 3. . vscode 4. results 5. gem5art - env 6. disk - image / packer 7. disk - image / packer_cache 8. disk - image / spec - 2017 / spec - 2017 - image / spec - 2017 9. disk - image / spec - 2017 / cpu2017 - 1.1.0 . iso 10. gem5
11. vmlinux - 4.19.83 Step 4: Build the Gem5 1. git clone -b v20.1.0.4 https://gem5.googlesource.com/public/gem5 2. cd gem5 3. scons build/X86/gem5.opt -j8 In this step I got an error repeatedly The above installation was not possible on MacOS, so I had to install Ubuntu with docker While trying to build it with docker i had to reinstall gem5 every time I started the container and while trying to persist the data the gem5 directory would be deleted every time a new container was built. So, using docker was not a good idea. So, I used UTM virtual machine to use an ubuntu image.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
To set up Gem5 on Ubuntu, you'll need essential dependencies like m4, Python, SCons, GCC, Git, and others. Administrative privileges are necessary when executing SCons commands. These packages can either be installed directly or managed through a Python virtual environment. Even when I used an ubuntu based environment I got issues Like: Conclusion: Based on my experience, it's essential for Gem5 to expand its testing beyond specific operating systems. Attempting to run Gem5 on a macOS system proved challenging. Despite clear instructions in the documentation, I encountered difficulties when Gem5 failed to execute correctly. To enhance user experience, Gem5 should provide more comprehensive documentation regarding its dependencies and offer a section dedicated to addressing frequently encountered errors. This would significantly assist users in troubleshooting issues that arise during installation or execution.