def get_parsec_artifacts(): parsec_disk_image = Artifact.registerArtifact( command = '''wget http://dist.gem5.org/dist/v21-0/images/x86/ubuntu-18-04/parsec.img.gz; gunzip parsec.img.gz;''', typ = 'disk image', name = 'parsec-disk-image', cwd = 'disk-images/', path = 'disk-images/parsec.img', documentation = 'Disk-image using Ubuntu 18.04 with m5 binary and PARSEC installed' ) parsec_artifacts = SimpleNamespace(disk_image = parsec_disk_image) return parsec_artifacts
def get_boot_exit_artifacts(): boot_exit_disk_image = Artifact.registerArtifact( command = '''wget http://dist.gem5.org/dist/v20-1/images/x86/ubuntu-18-04/boot-exit.img.gz; gunzip boot-exit.img.gz''', typ = 'disk image', name = 'boot-exit-disk-image', cwd = 'disk-images/', path = 'disk-images/boot-exit.img', documentation = 'Ubuntu with m5 binary installed and root auto login' ) boot_exit_artifacts = SimpleNamespace(disk_image = boot_exit_disk_image) return boot_exit_artifacts
def get_gapbs_artifacts(): gapbs_disk_image = Artifact.registerArtifact( command = '''wget http://dist.gem5.org/dist/v21-0/images/x86/ubuntu-18-04/gapbs.img.gz; gunzip gapbs.img.gz;''', typ = 'disk image', name = 'gapbs-disk-image', cwd = 'disk-images/', path = 'disk-images/gapbs.img', documentation = 'Ubuntu with m5 binary installed and root auto login and gapbs installed' ) gapbs_artifacts = SimpleNamespace(disk_image = gapbs_disk_image) return gapbs_artifacts
def get_npb_artifacts(): npb_disk_image = Artifact.registerArtifact( command = '''wget http://dist.gem5.org/dist/v21-0/images/x86/ubuntu-18-04/npb.img.gz; gunzip npb.img.gz''', typ = 'disk image', name = 'npb-disk-image', cwd = 'disk-images/', path = 'disk-images/npb.img', documentation = 'Ubuntu with m5 binary and NPB (with ROI annotations: darchr/npb-hooks/gem5art-npb-tutorial) installed.' ) npb_artifacts = SimpleNamespace(disk_image = npb_disk_image) return npb_artifacts
def get_parsec_20_04_artifacts(): parsec_20_04_disk_image = Artifact.registerArtifact( command = '''cp ../../../../parsec-20.04.json ./parsec/parsec-20.04.json ./parker build parsec/parsec-20.04.json; mv parsec/parsec-20.04-image/parsec-20.04 ../../../../disk-images/parsec-20.04''', typ = 'disk image', name = 'parsec-disk-image', cwd = 'gem5-resources/src/parsec/disk-image/', path = 'disk-images/parsec-20.04', documentation = 'Disk-image using Ubuntu 20.04 with m5 binary and PARSEC installed' ) parsec_20_04_artifacts = SimpleNamespace(disk_image = parsec_20_04_disk_image) return parsec_20_04_artifacts
def get_spec_2017_artifacts(): spec_2017_disk_image = Artifact.registerArtifact( command = '''./packer build spec2017/spec2017.json; mv disk-image/spec-2017/spec-2017-image/spec-2017 ../../../disk-images/''', typ = 'disk image', name = 'spec-2017-disk-image', cwd = 'gem5-resources/src/spec-2017/disk-image/', path = 'disk-images/spec-2017', inputs = [packer_binary, experiments_repo, m5_binary], documentation = 'Ubuntu Server with SPEC 2017 installed, m5 binary installed and root auto login' ) spec_2017_artifacts = SimpleNamespace(disk_image = spec_2017_disk_image) return spec_2017_artifacts
#config_controlbenchmarks: To run microbenchmark experiments using different branch preidctors for same CPU. #config_memorybenchmarks: To run microbenchmark experiments for all cpu with different L1 or L2 cache size. import os import sys import argparse from uuid import UUID from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art import tasks experiments_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gem5art-experiments.git', typ='git repo', name='gem5-experiments', path='./', cwd='../', documentation='main experiments repo to run experiments in gem5art') gem5_repo = Artifact.registerArtifact( command='''git clone https://github.com/darchr/gem5 cd gem5''', typ='git repo', name='gem5', path='gem5/', cwd='./', documentation= 'git repo with gem5 cloned on Nov 22 from DarchR (patch shd be applied to support mem vector port)' )
from gem5art.tasks.tasks import run_gem5_instance """packer = Artifact.registerArtifact( command = '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ = 'binary', name = 'packer', path = 'disk-image/packer', cwd = 'disk-image', documentation = 'Program to build disk images. Downloaded sometime in August from hashicorp.' )""" experiments_repo = Artifact.registerArtifact( command= 'git clone https://github.com/darchr/microbenchmark-experiments.git', typ='git repo', name='microbenchmark-tests', path='./', cwd='../', documentation='main experiments repo to run microbenchmarks with gem5') gem5_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gem5', typ='git repo', name='gem5', path='gem5/', cwd='./', documentation='git repo with gem5 master branch on Sep 23rd') m5_binary = Artifact.registerArtifact(command='make -f Makefile.x86', typ='binary', name='m5',
import os import sys from uuid import UUID from itertools import starmap from itertools import product from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance packer = Artifact.registerArtifact( command = '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ = 'binary', name = 'packer', path = 'disk-image/packer', cwd = 'disk-image', documentation = 'Program to build disk images. Downloaded sometime in August from hashicorp.' ) experiments_repo = Artifact.registerArtifact( command = 'git clone https://your-remote-add/npb-tests.git', typ = 'git repo', name = 'npb_tests', path = './', cwd = '../', documentation = 'main repo to run npb multicore tests with gem5 20' ) gem5_repo = Artifact.registerArtifact(
#!/usr/bin/env python3 #This is a job launch script to run basic microbenchmark experiment for all cpu. import os import sys from uuid import UUID from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance experiments_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gem5art-experiments', typ='git repo', name='microbenchmark-tests', path='./', cwd='../', documentation='main experiments repo to run microbenchmarks with gem5') gem5_repo = Artifact.registerArtifact( command='git clone https://gem5.googlesource.com/public/gem5', typ='git repo', name='gem5', path='gem5/', cwd='./', documentation='git repo with gem5-19 master branch ') m5_binary = Artifact.registerArtifact(command='make -f Makefile.x86', typ='binary', name='m5',
#This is a job launch script for GPU FS project import os import sys from uuid import UUID from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance packer = Artifact.registerArtifact( command= '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ='binary', name='packer', path='disk-image/packer', cwd='disk-image', documentation= 'Program to build disk images. Downloaded sometime in August from hashicorp.' ) experiments_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gpu-fs-experiments.git', typ='git repo', name='gpu-fs-experiments', path='./', cwd='../', documentation='Experiments repo to run GPU full system with gem5') gem5_repo = Artifact.registerArtifact(
import os import sys from uuid import UUID from itertools import starmap from itertools import product from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance packer = Artifact.registerArtifact( command= '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ='binary', name='packer', path='disk-image/packer', cwd='disk-image', documentation= 'Program to build disk images. Downloaded sometime in August from hashicorp.' ) experiments_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gem5art-experiments.git', typ='git repo', name='gapbs-test', path='./', cwd='../', documentation='main experiments repo to run GAPBS with gem5') gem5_repo = Artifact.registerArtifact(
import os import sys from uuid import UUID from itertools import starmap from itertools import product from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance packer = Artifact.registerArtifact( command= '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ='binary', name='packer', path='disk-image/packer', cwd='disk-image', documentation= 'Program to build disk images. Downloaded sometime in August from hashicorp.' ) experiments_repo = Artifact.registerArtifact( command='git clone https://your-remote-add/boot_tests.git', typ='git repo', name='boot_tests', path='./', cwd='../', documentation= 'main experiments repo to run full system boot tests with gem5')
#This is a job launch script to run microbenchmark experiments. import os import sys import argparse from uuid import UUID from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance experiments_repo = Artifact.registerArtifact( command='git clone https://github.com/darchr/gem5art-experiments.git', typ='git repo', name='gem5_skylake_config', path='./', cwd='../', documentation='main experiments repo to test gem5 with micro-benchmarks') gem5_repo = Artifact.registerArtifact( command='''git clone https://gem5.googlesource.com/public/gem5; cd gem5; git cherry-pick 27dbffdb006c7bd12ad2489a2d346274fe646720; git cherry-pick ad65be829e7c6ffeaa143d292a7c4a5ba27c5c7c; wget https://github.com/darchr/gem5/commit/f0a358ee08aba1563c7b5277866095b4cbb7c36d.patch; git am f0a358ee08aba1563c7b5277866095b4cbb7c36d.patch --reject; ''', typ='git repo', name='gem5', path='gem5/',
from gem5art.artifact.artifact import Artifact # Infomation about this tests repo experiments_repo = Artifact.registerArtifact( command='git clone https://to-be-finalized', typ='git repo', name='gem5art-tests', path='./', cwd='../', documentation='main experiments repo to run all full system tests with gem5' ) # --- # gem5 artifacts gem5_repo = Artifact.registerArtifact( command='''git clone https://gem5.googlesource.com/public/gem5 cd gem5; git checkout v21.0.0.0''', typ='git repo', name='gem5', path='gem5/', cwd='./', documentation= '''Cloned gem5 from googlesource, checked out the v21.0.0.0 tag. The HEAD commit is: ea7d012c00e5555857ef999b88a8ec2bde801a1f''' ) m5_binary = Artifact.registerArtifact(command='scons build/x86/out/m5', typ='binary', name='m5', path='gem5/util/m5/build/x86/out/m5',
#This is a job launch script for boot tests import os import sys from uuid import UUID from gem5art.artifact.artifact import Artifact from gem5art.run import gem5Run from gem5art.tasks.tasks import run_gem5_instance packer = Artifact.registerArtifact( command= '''wget https://releases.hashicorp.com/packer/1.4.3/packer_1.4.3_linux_amd64.zip; unzip packer_1.4.3_linux_amd64.zip; ''', typ='binary', name='packer', path='disk-image/packer', cwd='disk-image', documentation= 'Program to build disk images. Downloaded sometime in August from hashicorp.' ) experiments_repo = Artifact.registerArtifact( command='git clone https://your-remote-add/boot_tests.git', typ='git repo', name='boot_tests', path='./', cwd='../', documentation= 'main experiments repo to run full system boot tests with gem5')
from types import SimpleNamespace from common_artifacts import * from gem5art.artifact.artifact import Artifact packer_binary = Artifact.registerArtifact( command = '''wget https://releases.hashicorp.com/packer/1.6.5/packer_1.6.5_linux_amd64.zip; unzip packer_1.6.5_linux_amd64.zip; ''', typ = 'binary', name = 'packer', path = 'packer', cwd = './', documentation = 'Program to build disk images') def get_boot_exit_artifacts(): boot_exit_disk_image = Artifact.registerArtifact( command = '''wget http://dist.gem5.org/dist/v20-1/images/x86/ubuntu-18-04/boot-exit.img.gz; gunzip boot-exit.img.gz''', typ = 'disk image', name = 'boot-exit-disk-image', cwd = 'disk-images/', path = 'disk-images/boot-exit.img', documentation = 'Ubuntu with m5 binary installed and root auto login' ) boot_exit_artifacts = SimpleNamespace(disk_image = boot_exit_disk_image) return boot_exit_artifacts def get_npb_artifacts(): npb_disk_image = Artifact.registerArtifact(