cpu2000.py revision 13774
15361Srstrong@cs.ucsd.edu# Copyright (c) 2006-2008 The Regents of The University of Michigan 23671Sbinkertn@umich.edu# All rights reserved. 33671Sbinkertn@umich.edu# 43671Sbinkertn@umich.edu# Redistribution and use in source and binary forms, with or without 53671Sbinkertn@umich.edu# modification, are permitted provided that the following conditions are 63671Sbinkertn@umich.edu# met: redistributions of source code must retain the above copyright 73671Sbinkertn@umich.edu# notice, this list of conditions and the following disclaimer; 83671Sbinkertn@umich.edu# redistributions in binary form must reproduce the above copyright 93671Sbinkertn@umich.edu# notice, this list of conditions and the following disclaimer in the 103671Sbinkertn@umich.edu# documentation and/or other materials provided with the distribution; 113671Sbinkertn@umich.edu# neither the name of the copyright holders nor the names of its 123671Sbinkertn@umich.edu# contributors may be used to endorse or promote products derived from 133671Sbinkertn@umich.edu# this software without specific prior written permission. 143671Sbinkertn@umich.edu# 153671Sbinkertn@umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 163671Sbinkertn@umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 173671Sbinkertn@umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 183671Sbinkertn@umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 193671Sbinkertn@umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 203671Sbinkertn@umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 213671Sbinkertn@umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 223671Sbinkertn@umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 233671Sbinkertn@umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 243671Sbinkertn@umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 253671Sbinkertn@umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 263671Sbinkertn@umich.edu# 273671Sbinkertn@umich.edu# Authors: Nathan Binkert 283671Sbinkertn@umich.edu 2912564Sgabeblack@google.comfrom __future__ import print_function 3013774Sandreas.sandberg@arm.comfrom __future__ import absolute_import 3112564Sgabeblack@google.com 323671Sbinkertn@umich.eduimport os 333671Sbinkertn@umich.eduimport sys 343671Sbinkertn@umich.edufrom os.path import basename, exists, join as joinpath, normpath 353671Sbinkertn@umich.edufrom os.path import isdir, isfile, islink 363671Sbinkertn@umich.edu 376028Ssteve.reinhardt@amd.comspec_dist = os.environ.get('M5_CPU2000', '/dist/m5/cpu2000') 383671Sbinkertn@umich.edu 393671Sbinkertn@umich.edudef copyfiles(srcdir, dstdir): 403671Sbinkertn@umich.edu from filecmp import cmp as filecmp 413671Sbinkertn@umich.edu from shutil import copyfile 423671Sbinkertn@umich.edu 433671Sbinkertn@umich.edu srcdir = normpath(srcdir) 443671Sbinkertn@umich.edu dstdir = normpath(dstdir) 453671Sbinkertn@umich.edu 463671Sbinkertn@umich.edu if not isdir(dstdir): 473671Sbinkertn@umich.edu os.mkdir(dstdir) 483671Sbinkertn@umich.edu 493671Sbinkertn@umich.edu for root, dirs, files in os.walk(srcdir): 503671Sbinkertn@umich.edu root = normpath(root) 513671Sbinkertn@umich.edu prefix = os.path.commonprefix([root, srcdir]) 523671Sbinkertn@umich.edu 533671Sbinkertn@umich.edu root = root[len(prefix):] 543671Sbinkertn@umich.edu if root.startswith('/'): 553671Sbinkertn@umich.edu root = root[1:] 563671Sbinkertn@umich.edu 573671Sbinkertn@umich.edu for entry in dirs: 583671Sbinkertn@umich.edu newdir = joinpath(dstdir, root, entry) 593671Sbinkertn@umich.edu if not isdir(newdir): 603671Sbinkertn@umich.edu os.mkdir(newdir) 613671Sbinkertn@umich.edu 623671Sbinkertn@umich.edu for entry in files: 633671Sbinkertn@umich.edu dest = normpath(joinpath(dstdir, root, entry)) 643671Sbinkertn@umich.edu src = normpath(joinpath(srcdir, root, entry)) 653671Sbinkertn@umich.edu if not isfile(dest) or not filecmp(src, dest): 663671Sbinkertn@umich.edu copyfile(src, dest) 673671Sbinkertn@umich.edu 683671Sbinkertn@umich.edu # some of the spec benchmarks expect to be run from one directory up. 693671Sbinkertn@umich.edu # just create some symlinks that solve the problem 703671Sbinkertn@umich.edu inlink = joinpath(dstdir, 'input') 713671Sbinkertn@umich.edu outlink = joinpath(dstdir, 'output') 723671Sbinkertn@umich.edu if not exists(inlink): 733671Sbinkertn@umich.edu os.symlink('.', inlink) 743671Sbinkertn@umich.edu if not exists(outlink): 753671Sbinkertn@umich.edu os.symlink('.', outlink) 763671Sbinkertn@umich.edu 773671Sbinkertn@umich.educlass Benchmark(object): 783671Sbinkertn@umich.edu def __init__(self, isa, os, input_set): 793671Sbinkertn@umich.edu if not hasattr(self.__class__, 'name'): 803671Sbinkertn@umich.edu self.name = self.__class__.__name__ 813671Sbinkertn@umich.edu 823671Sbinkertn@umich.edu if not hasattr(self.__class__, 'binary'): 833671Sbinkertn@umich.edu self.binary = self.name 843671Sbinkertn@umich.edu 853671Sbinkertn@umich.edu if not hasattr(self.__class__, 'args'): 863671Sbinkertn@umich.edu self.args = [] 873671Sbinkertn@umich.edu 883671Sbinkertn@umich.edu if not hasattr(self.__class__, 'output'): 893671Sbinkertn@umich.edu self.output = '%s.out' % self.name 903671Sbinkertn@umich.edu 915361Srstrong@cs.ucsd.edu if not hasattr(self.__class__, 'simpoint'): 925361Srstrong@cs.ucsd.edu self.simpoint = None 935361Srstrong@cs.ucsd.edu 943671Sbinkertn@umich.edu try: 953671Sbinkertn@umich.edu func = getattr(self.__class__, input_set) 963671Sbinkertn@umich.edu except AttributeError: 9713731Sandreas.sandberg@arm.com raise AttributeError( 9813731Sandreas.sandberg@arm.com 'The benchmark %s does not have the %s input set' % \ 9913731Sandreas.sandberg@arm.com (self.name, input_set)) 1003671Sbinkertn@umich.edu 1013671Sbinkertn@umich.edu executable = joinpath(spec_dist, 'binaries', isa, os, self.binary) 1023671Sbinkertn@umich.edu if not isfile(executable): 10313731Sandreas.sandberg@arm.com raise AttributeError('%s not found' % executable) 1043671Sbinkertn@umich.edu self.executable = executable 1053671Sbinkertn@umich.edu 1063671Sbinkertn@umich.edu # root of tree for input & output data files 1073671Sbinkertn@umich.edu data_dir = joinpath(spec_dist, 'data', self.name) 1083671Sbinkertn@umich.edu # optional subtree with files shared across input sets 1093671Sbinkertn@umich.edu all_dir = joinpath(data_dir, 'all') 1103671Sbinkertn@umich.edu # dirs for input & output files for this input set 1113671Sbinkertn@umich.edu inputs_dir = joinpath(data_dir, input_set, 'input') 1123671Sbinkertn@umich.edu outputs_dir = joinpath(data_dir, input_set, 'output') 1134116Sgblack@eecs.umich.edu # keep around which input set was specified 1144116Sgblack@eecs.umich.edu self.input_set = input_set 1153671Sbinkertn@umich.edu 1163671Sbinkertn@umich.edu if not isdir(inputs_dir): 11713731Sandreas.sandberg@arm.com raise AttributeError('%s not found' % inputs_dir) 1183671Sbinkertn@umich.edu 1193671Sbinkertn@umich.edu self.inputs_dir = [ inputs_dir ] 1203671Sbinkertn@umich.edu if isdir(all_dir): 1213671Sbinkertn@umich.edu self.inputs_dir += [ joinpath(all_dir, 'input') ] 1223671Sbinkertn@umich.edu if isdir(outputs_dir): 1233671Sbinkertn@umich.edu self.outputs_dir = outputs_dir 1243671Sbinkertn@umich.edu 1253671Sbinkertn@umich.edu if not hasattr(self.__class__, 'stdin'): 1263671Sbinkertn@umich.edu self.stdin = joinpath(inputs_dir, '%s.in' % self.name) 1273671Sbinkertn@umich.edu if not isfile(self.stdin): 1283671Sbinkertn@umich.edu self.stdin = None 1293671Sbinkertn@umich.edu 1303671Sbinkertn@umich.edu if not hasattr(self.__class__, 'stdout'): 1313671Sbinkertn@umich.edu self.stdout = joinpath(outputs_dir, '%s.out' % self.name) 1323671Sbinkertn@umich.edu if not isfile(self.stdout): 1333671Sbinkertn@umich.edu self.stdout = None 1343671Sbinkertn@umich.edu 1353671Sbinkertn@umich.edu func(self, isa, os) 1363671Sbinkertn@umich.edu 13711851Sbrandon.potter@amd.com def makeProcessArgs(self, **kwargs): 13811851Sbrandon.potter@amd.com # set up default args for Process object 1393671Sbinkertn@umich.edu process_args = {} 1404555Sbinkertn@umich.edu process_args['cmd'] = [ self.name ] + self.args 1413671Sbinkertn@umich.edu process_args['executable'] = self.executable 1423671Sbinkertn@umich.edu if self.stdin: 1433671Sbinkertn@umich.edu process_args['input'] = self.stdin 1443671Sbinkertn@umich.edu if self.stdout: 1453671Sbinkertn@umich.edu process_args['output'] = self.stdout 1465378Ssaidi@eecs.umich.edu if self.simpoint: 1475378Ssaidi@eecs.umich.edu process_args['simpoint'] = self.simpoint 1483671Sbinkertn@umich.edu # explicit keywords override defaults 1493671Sbinkertn@umich.edu process_args.update(kwargs) 1503671Sbinkertn@umich.edu 1513671Sbinkertn@umich.edu return process_args 1523671Sbinkertn@umich.edu 15311851Sbrandon.potter@amd.com def makeProcess(self, **kwargs): 15411851Sbrandon.potter@amd.com process_args = self.makeProcessArgs(**kwargs) 1553671Sbinkertn@umich.edu 1563671Sbinkertn@umich.edu # figure out working directory: use m5's outdir unless 15711851Sbrandon.potter@amd.com # overridden by Process's cwd param 1583671Sbinkertn@umich.edu cwd = process_args.get('cwd') 1595361Srstrong@cs.ucsd.edu 1603671Sbinkertn@umich.edu if not cwd: 1618246Snate@binkert.org from m5 import options 1623671Sbinkertn@umich.edu cwd = options.outdir 1633671Sbinkertn@umich.edu process_args['cwd'] = cwd 1643671Sbinkertn@umich.edu if not isdir(cwd): 1653671Sbinkertn@umich.edu os.makedirs(cwd) 1663671Sbinkertn@umich.edu # copy input files to working directory 1673671Sbinkertn@umich.edu for d in self.inputs_dir: 1683671Sbinkertn@umich.edu copyfiles(d, cwd) 16911851Sbrandon.potter@amd.com # generate Process object 17011851Sbrandon.potter@amd.com from m5.objects import Process 17111851Sbrandon.potter@amd.com return Process(**process_args) 1723671Sbinkertn@umich.edu 1733671Sbinkertn@umich.edu def __str__(self): 1743671Sbinkertn@umich.edu return self.name 1753671Sbinkertn@umich.edu 1763671Sbinkertn@umich.educlass DefaultBenchmark(Benchmark): 1773671Sbinkertn@umich.edu def ref(self, isa, os): pass 1783671Sbinkertn@umich.edu def test(self, isa, os): pass 1793671Sbinkertn@umich.edu def train(self, isa, os): pass 1803671Sbinkertn@umich.edu 1813671Sbinkertn@umich.educlass MinneDefaultBenchmark(DefaultBenchmark): 1823671Sbinkertn@umich.edu def smred(self, isa, os): pass 1833671Sbinkertn@umich.edu def mdred(self, isa, os): pass 1843671Sbinkertn@umich.edu def lgred(self, isa, os): pass 1853671Sbinkertn@umich.edu 1863671Sbinkertn@umich.educlass ammp(MinneDefaultBenchmark): 1873671Sbinkertn@umich.edu name = 'ammp' 1883671Sbinkertn@umich.edu number = 188 1893671Sbinkertn@umich.edu lang = 'C' 1905361Srstrong@cs.ucsd.edu simpoint = 108*100E6 1913671Sbinkertn@umich.edu 1923671Sbinkertn@umich.educlass applu(MinneDefaultBenchmark): 1933671Sbinkertn@umich.edu name = 'applu' 1943671Sbinkertn@umich.edu number = 173 1953671Sbinkertn@umich.edu lang = 'F77' 1965361Srstrong@cs.ucsd.edu simpoint = 2179*100E6 1973671Sbinkertn@umich.edu 1983671Sbinkertn@umich.educlass apsi(MinneDefaultBenchmark): 1993671Sbinkertn@umich.edu name = 'apsi' 2003671Sbinkertn@umich.edu number = 301 2013671Sbinkertn@umich.edu lang = 'F77' 2025361Srstrong@cs.ucsd.edu simpoint = 3408*100E6 2033671Sbinkertn@umich.edu 2043671Sbinkertn@umich.educlass art(DefaultBenchmark): 2053671Sbinkertn@umich.edu name = 'art' 2063671Sbinkertn@umich.edu number = 179 2073671Sbinkertn@umich.edu lang = 'C' 2083671Sbinkertn@umich.edu 2093671Sbinkertn@umich.edu def test(self, isa, os): 2103671Sbinkertn@umich.edu self.args = [ '-scanfile', 'c756hel.in', 2113671Sbinkertn@umich.edu '-trainfile1', 'a10.img', 2123671Sbinkertn@umich.edu '-stride', '2', 2133671Sbinkertn@umich.edu '-startx', '134', 2143671Sbinkertn@umich.edu '-starty', '220', 2153671Sbinkertn@umich.edu '-endx', '139', 2163671Sbinkertn@umich.edu '-endy', '225', 2173671Sbinkertn@umich.edu '-objects', '1' ] 2183671Sbinkertn@umich.edu self.output = 'test.out' 2193671Sbinkertn@umich.edu 2203671Sbinkertn@umich.edu def train(self, isa, os): 2213671Sbinkertn@umich.edu self.args = [ '-scanfile', 'c756hel.in', 2223671Sbinkertn@umich.edu '-trainfile1', 'a10.img', 2233671Sbinkertn@umich.edu '-stride', '2', 2243671Sbinkertn@umich.edu '-startx', '134', 2253671Sbinkertn@umich.edu '-starty', '220', 2263671Sbinkertn@umich.edu '-endx', '184', 2273671Sbinkertn@umich.edu '-endy', '240', 2283671Sbinkertn@umich.edu '-objects', '3' ] 2293671Sbinkertn@umich.edu self.output = 'train.out' 2303671Sbinkertn@umich.edu 2313671Sbinkertn@umich.edu def lgred(self, isa, os): 2323671Sbinkertn@umich.edu self.args = ['-scanfile', 'c756hel.in', 2333671Sbinkertn@umich.edu '-trainfile1', 'a10.img', 2343671Sbinkertn@umich.edu '-stride', '5', 2353671Sbinkertn@umich.edu '-startx', '134', 2363671Sbinkertn@umich.edu '-starty', '220', 2373671Sbinkertn@umich.edu '-endx', '184', 2383671Sbinkertn@umich.edu '-endy', '240', 2393671Sbinkertn@umich.edu '-objects', '1' ] 2403671Sbinkertn@umich.edu self.output = 'lgred.out' 2413671Sbinkertn@umich.edu 2423671Sbinkertn@umich.edu 2433671Sbinkertn@umich.educlass art110(art): 2443671Sbinkertn@umich.edu def ref(self, isa, os): 2453671Sbinkertn@umich.edu self.args = [ '-scanfile', 'c756hel.in', 2463671Sbinkertn@umich.edu '-trainfile1', 'a10.img', 2473671Sbinkertn@umich.edu '-trainfile2', 'hc.img', 2483671Sbinkertn@umich.edu '-stride', '2', 2493671Sbinkertn@umich.edu '-startx', '110', 2503671Sbinkertn@umich.edu '-starty', '200', 2513671Sbinkertn@umich.edu '-endx', '160', 2523671Sbinkertn@umich.edu '-endy', '240', 2533671Sbinkertn@umich.edu '-objects', '10' ] 2543671Sbinkertn@umich.edu self.output = 'ref.1.out' 2555361Srstrong@cs.ucsd.edu self.simpoint = 340*100E6 2563671Sbinkertn@umich.edu 2573671Sbinkertn@umich.educlass art470(art): 2583671Sbinkertn@umich.edu def ref(self, isa, os): 2593671Sbinkertn@umich.edu self.args = [ '-scanfile', 'c756hel.in', 2603671Sbinkertn@umich.edu '-trainfile1', 'a10.img', 2613671Sbinkertn@umich.edu '-trainfile2', 'hc.img', 2623671Sbinkertn@umich.edu '-stride', '2', 2633671Sbinkertn@umich.edu '-startx', '470', 2643671Sbinkertn@umich.edu '-starty', '140', 2653671Sbinkertn@umich.edu '-endx', '520', 2663671Sbinkertn@umich.edu '-endy', '180', 2673671Sbinkertn@umich.edu '-objects', '10' ] 2683671Sbinkertn@umich.edu self.output = 'ref.2.out' 2695361Srstrong@cs.ucsd.edu self.simpoint = 365*100E6 2703671Sbinkertn@umich.edu 2713671Sbinkertn@umich.educlass equake(DefaultBenchmark): 2723671Sbinkertn@umich.edu name = 'equake' 2733671Sbinkertn@umich.edu number = 183 2743671Sbinkertn@umich.edu lang = 'C' 2755361Srstrong@cs.ucsd.edu simpoint = 812*100E6 2763671Sbinkertn@umich.edu 2773671Sbinkertn@umich.edu def lgred(self, isa, os): pass 2783671Sbinkertn@umich.edu 2793671Sbinkertn@umich.educlass facerec(MinneDefaultBenchmark): 2803671Sbinkertn@umich.edu name = 'facerec' 2813671Sbinkertn@umich.edu number = 187 2823671Sbinkertn@umich.edu lang = 'F' 2835361Srstrong@cs.ucsd.edu simpoint = 375*100E6 2843671Sbinkertn@umich.edu 2853671Sbinkertn@umich.educlass fma3d(MinneDefaultBenchmark): 2863671Sbinkertn@umich.edu name = 'fma3d' 2873671Sbinkertn@umich.edu number = 191 2883671Sbinkertn@umich.edu lang = 'F' 2895361Srstrong@cs.ucsd.edu simpoint = 2541*100E6 2903671Sbinkertn@umich.edu 2913671Sbinkertn@umich.educlass galgel(MinneDefaultBenchmark): 2923671Sbinkertn@umich.edu name = 'galgel' 2933671Sbinkertn@umich.edu number = 178 2943671Sbinkertn@umich.edu lang = 'F' 2955361Srstrong@cs.ucsd.edu simpoint = 2491*100E6 2963671Sbinkertn@umich.edu 2973671Sbinkertn@umich.educlass lucas(MinneDefaultBenchmark): 2983671Sbinkertn@umich.edu name = 'lucas' 2993671Sbinkertn@umich.edu number = 189 3003671Sbinkertn@umich.edu lang = 'F' 3015361Srstrong@cs.ucsd.edu simpoint = 545*100E6 3023671Sbinkertn@umich.edu 3033671Sbinkertn@umich.educlass mesa(Benchmark): 3043671Sbinkertn@umich.edu name = 'mesa' 3053671Sbinkertn@umich.edu number = 177 3063671Sbinkertn@umich.edu lang = 'C' 3073671Sbinkertn@umich.edu stdin = None 3083671Sbinkertn@umich.edu 3093671Sbinkertn@umich.edu def __set_args(self, frames): 3103671Sbinkertn@umich.edu self.args = [ '-frames', frames, '-meshfile', '%s.in' % self.name, 3113671Sbinkertn@umich.edu '-ppmfile', '%s.ppm' % self.name ] 3123671Sbinkertn@umich.edu 3133671Sbinkertn@umich.edu def test(self, isa, os): 3143671Sbinkertn@umich.edu self.__set_args('10') 3153671Sbinkertn@umich.edu 3163671Sbinkertn@umich.edu def train(self, isa, os): 3173671Sbinkertn@umich.edu self.__set_args('500') 3183671Sbinkertn@umich.edu 3193671Sbinkertn@umich.edu def ref(self, isa, os): 3203671Sbinkertn@umich.edu self.__set_args('1000') 3215361Srstrong@cs.ucsd.edu self.simpoint = 1135*100E6 3223671Sbinkertn@umich.edu 3233671Sbinkertn@umich.edu def lgred(self, isa, os): 3243671Sbinkertn@umich.edu self.__set_args('1') 3253671Sbinkertn@umich.edu 3263671Sbinkertn@umich.educlass mgrid(MinneDefaultBenchmark): 3273671Sbinkertn@umich.edu name = 'mgrid' 3283671Sbinkertn@umich.edu number = 172 3293671Sbinkertn@umich.edu lang = 'F77' 3305361Srstrong@cs.ucsd.edu simpoint = 3292*100E6 3313671Sbinkertn@umich.edu 3323671Sbinkertn@umich.educlass sixtrack(DefaultBenchmark): 3333671Sbinkertn@umich.edu name = 'sixtrack' 3343671Sbinkertn@umich.edu number = 200 3353671Sbinkertn@umich.edu lang = 'F77' 3365361Srstrong@cs.ucsd.edu simpoint = 3043*100E6 3373671Sbinkertn@umich.edu 3383671Sbinkertn@umich.edu def lgred(self, isa, os): pass 3393671Sbinkertn@umich.edu 3403671Sbinkertn@umich.educlass swim(MinneDefaultBenchmark): 3413671Sbinkertn@umich.edu name = 'swim' 3423671Sbinkertn@umich.edu number = 171 3433671Sbinkertn@umich.edu lang = 'F77' 3445361Srstrong@cs.ucsd.edu simpoint = 2079*100E6 3453671Sbinkertn@umich.edu 3463671Sbinkertn@umich.educlass wupwise(DefaultBenchmark): 3473671Sbinkertn@umich.edu name = 'wupwise' 3483671Sbinkertn@umich.edu number = 168 3493671Sbinkertn@umich.edu lang = 'F77' 3505361Srstrong@cs.ucsd.edu simpoint = 3237*100E6 3513671Sbinkertn@umich.edu 3523671Sbinkertn@umich.edu def lgred(self, isa, os): pass 3533671Sbinkertn@umich.edu 3543671Sbinkertn@umich.educlass bzip2(DefaultBenchmark): 3553671Sbinkertn@umich.edu name = 'bzip2' 3563671Sbinkertn@umich.edu number = 256 3573671Sbinkertn@umich.edu lang = 'C' 3583671Sbinkertn@umich.edu 3593671Sbinkertn@umich.edu def test(self, isa, os): 3603671Sbinkertn@umich.edu self.args = [ 'input.random' ] 3613671Sbinkertn@umich.edu 3623671Sbinkertn@umich.edu def train(self, isa, os): 3633671Sbinkertn@umich.edu self.args = [ 'input.compressed' ] 3643671Sbinkertn@umich.edu 3653671Sbinkertn@umich.educlass bzip2_source(bzip2): 3663671Sbinkertn@umich.edu def ref(self, isa, os): 3675361Srstrong@cs.ucsd.edu self.simpoint = 977*100E6 3683671Sbinkertn@umich.edu self.args = [ 'input.source', '58' ] 3693671Sbinkertn@umich.edu 3703671Sbinkertn@umich.edu def lgred(self, isa, os): 3713671Sbinkertn@umich.edu self.args = [ 'input.source', '1' ] 3723671Sbinkertn@umich.edu 3733671Sbinkertn@umich.educlass bzip2_graphic(bzip2): 3743671Sbinkertn@umich.edu def ref(self, isa, os): 3755361Srstrong@cs.ucsd.edu self.simpoint = 718*100E6 3763671Sbinkertn@umich.edu self.args = [ 'input.graphic', '58' ] 3773671Sbinkertn@umich.edu 3783671Sbinkertn@umich.edu def lgred(self, isa, os): 3793671Sbinkertn@umich.edu self.args = [ 'input.graphic', '1' ] 3803671Sbinkertn@umich.edu 3813671Sbinkertn@umich.educlass bzip2_program(bzip2): 3823671Sbinkertn@umich.edu def ref(self, isa, os): 3835361Srstrong@cs.ucsd.edu self.simpoint = 458*100E6 3843671Sbinkertn@umich.edu self.args = [ 'input.program', '58' ] 3853671Sbinkertn@umich.edu 3863671Sbinkertn@umich.edu def lgred(self, isa, os): 3873671Sbinkertn@umich.edu self.args = [ 'input.program', '1' ] 3883671Sbinkertn@umich.edu 3893671Sbinkertn@umich.educlass crafty(MinneDefaultBenchmark): 3903671Sbinkertn@umich.edu name = 'crafty' 3913671Sbinkertn@umich.edu number = 186 3923671Sbinkertn@umich.edu lang = 'C' 3935361Srstrong@cs.ucsd.edu simpoint = 774*100E6 3943671Sbinkertn@umich.edu 3953671Sbinkertn@umich.educlass eon(MinneDefaultBenchmark): 3963671Sbinkertn@umich.edu name = 'eon' 3973671Sbinkertn@umich.edu number = 252 3983671Sbinkertn@umich.edu lang = 'CXX' 3993671Sbinkertn@umich.edu stdin = None 4003671Sbinkertn@umich.edu 4013671Sbinkertn@umich.educlass eon_kajiya(eon): 4023671Sbinkertn@umich.edu args = [ 'chair.control.kajiya', 'chair.camera', 'chair.surfaces', 4033671Sbinkertn@umich.edu 'chair.kajiya.ppm', 'ppm', 'pixels_out.kajiya'] 4043671Sbinkertn@umich.edu output = 'kajiya_log.out' 4053671Sbinkertn@umich.edu 4063671Sbinkertn@umich.edu 4073671Sbinkertn@umich.educlass eon_cook(eon): 4083671Sbinkertn@umich.edu args = [ 'chair.control.cook', 'chair.camera', 'chair.surfaces', 4093671Sbinkertn@umich.edu 'chair.cook.ppm', 'ppm', 'pixels_out.cook' ] 4103671Sbinkertn@umich.edu output = 'cook_log.out' 4113671Sbinkertn@umich.edu 4123671Sbinkertn@umich.educlass eon_rushmeier(eon): 4133671Sbinkertn@umich.edu args = [ 'chair.control.rushmeier', 'chair.camera', 'chair.surfaces', 4143671Sbinkertn@umich.edu 'chair.rushmeier.ppm', 'ppm', 'pixels_out.rushmeier' ] 4153671Sbinkertn@umich.edu output = 'rushmeier_log.out' 4165361Srstrong@cs.ucsd.edu simpoint = 403*100E6 4173671Sbinkertn@umich.edu 4183671Sbinkertn@umich.educlass gap(DefaultBenchmark): 4193671Sbinkertn@umich.edu name = 'gap' 4203671Sbinkertn@umich.edu number = 254 4213671Sbinkertn@umich.edu lang = 'C' 4223671Sbinkertn@umich.edu 4233671Sbinkertn@umich.edu def __set_args(self, size): 4243671Sbinkertn@umich.edu self.args = [ '-l', './', '-q', '-m', size ] 4253671Sbinkertn@umich.edu 4263671Sbinkertn@umich.edu def test(self, isa, os): 4273671Sbinkertn@umich.edu self.__set_args('64M') 4283671Sbinkertn@umich.edu 4293671Sbinkertn@umich.edu def train(self, isa, os): 4303671Sbinkertn@umich.edu self.__set_args('128M') 4313671Sbinkertn@umich.edu 4323671Sbinkertn@umich.edu def ref(self, isa, os): 4333671Sbinkertn@umich.edu self.__set_args('192M') 4345361Srstrong@cs.ucsd.edu self.simpoint = 674*100E6 4353671Sbinkertn@umich.edu 4363671Sbinkertn@umich.edu def lgred(self, isa, os): 4373671Sbinkertn@umich.edu self.__set_args('64M') 4383671Sbinkertn@umich.edu 4393671Sbinkertn@umich.edu def mdred(self, isa, os): 4403671Sbinkertn@umich.edu self.__set_args('64M') 4413671Sbinkertn@umich.edu 4423671Sbinkertn@umich.edu def smred(self, isa, os): 4433671Sbinkertn@umich.edu self.__set_args('64M') 4443671Sbinkertn@umich.edu 4453671Sbinkertn@umich.educlass gcc(DefaultBenchmark): 4463671Sbinkertn@umich.edu name = 'gcc' 4473671Sbinkertn@umich.edu number = 176 4483671Sbinkertn@umich.edu lang = 'C' 4493671Sbinkertn@umich.edu 4503671Sbinkertn@umich.edu def test(self, isa, os): 4513671Sbinkertn@umich.edu self.args = [ 'cccp.i', '-o', 'cccp.s' ] 4523671Sbinkertn@umich.edu 4533671Sbinkertn@umich.edu def train(self, isa, os): 4543671Sbinkertn@umich.edu self.args = [ 'cp-decl.i', '-o', 'cp-decl.s' ] 4553671Sbinkertn@umich.edu 4563671Sbinkertn@umich.edu def smred(self, isa, os): 4573671Sbinkertn@umich.edu self.args = [ 'c-iterate.i', '-o', 'c-iterate.s' ] 4583671Sbinkertn@umich.edu 4593671Sbinkertn@umich.edu def mdred(self, isa, os): 4603671Sbinkertn@umich.edu self.args = [ 'rdlanal.i', '-o', 'rdlanal.s' ] 4613671Sbinkertn@umich.edu 4623671Sbinkertn@umich.edu def lgred(self, isa, os): 4633671Sbinkertn@umich.edu self.args = [ 'cp-decl.i', '-o', 'cp-decl.s' ] 4643671Sbinkertn@umich.edu 4653671Sbinkertn@umich.educlass gcc_166(gcc): 4663671Sbinkertn@umich.edu def ref(self, isa, os): 4675361Srstrong@cs.ucsd.edu self.simpoint = 389*100E6 4683671Sbinkertn@umich.edu self.args = [ '166.i', '-o', '166.s' ] 4693671Sbinkertn@umich.edu 4703671Sbinkertn@umich.educlass gcc_200(gcc): 4713671Sbinkertn@umich.edu def ref(self, isa, os): 4725361Srstrong@cs.ucsd.edu self.simpoint = 736*100E6 4733671Sbinkertn@umich.edu self.args = [ '200.i', '-o', '200.s' ] 4743671Sbinkertn@umich.edu 4753671Sbinkertn@umich.educlass gcc_expr(gcc): 4763671Sbinkertn@umich.edu def ref(self, isa, os): 4775361Srstrong@cs.ucsd.edu self.simpoint = 36*100E6 4783671Sbinkertn@umich.edu self.args = [ 'expr.i', '-o', 'expr.s' ] 4793671Sbinkertn@umich.edu 4803671Sbinkertn@umich.educlass gcc_integrate(gcc): 4813671Sbinkertn@umich.edu def ref(self, isa, os): 4825361Srstrong@cs.ucsd.edu self.simpoint = 4*100E6 4833671Sbinkertn@umich.edu self.args = [ 'integrate.i', '-o', 'integrate.s' ] 4843671Sbinkertn@umich.edu 4853671Sbinkertn@umich.educlass gcc_scilab(gcc): 4863671Sbinkertn@umich.edu def ref(self, isa, os): 4875361Srstrong@cs.ucsd.edu self.simpoint = 207*100E6 4883671Sbinkertn@umich.edu self.args = [ 'scilab.i', '-o', 'scilab.s' ] 4893671Sbinkertn@umich.edu 4903671Sbinkertn@umich.educlass gzip(DefaultBenchmark): 4913671Sbinkertn@umich.edu name = 'gzip' 4923671Sbinkertn@umich.edu number = 164 4933671Sbinkertn@umich.edu lang = 'C' 4943671Sbinkertn@umich.edu 4953671Sbinkertn@umich.edu def test(self, isa, os): 4963671Sbinkertn@umich.edu self.args = [ 'input.compressed', '2' ] 4973671Sbinkertn@umich.edu 4983671Sbinkertn@umich.edu def train(self, isa, os): 4993671Sbinkertn@umich.edu self.args = [ 'input.combined', '32' ] 5003671Sbinkertn@umich.edu 5013671Sbinkertn@umich.educlass gzip_source(gzip): 5023671Sbinkertn@umich.edu def ref(self, isa, os): 5035361Srstrong@cs.ucsd.edu self.simpoint = 334*100E6 5043671Sbinkertn@umich.edu self.args = [ 'input.source', '1' ] 5053671Sbinkertn@umich.edu def smred(self, isa, os): 5063671Sbinkertn@umich.edu self.args = [ 'input.source', '1' ] 5073671Sbinkertn@umich.edu def mdred(self, isa, os): 5083671Sbinkertn@umich.edu self.args = [ 'input.source', '1' ] 5093671Sbinkertn@umich.edu def lgred(self, isa, os): 5103671Sbinkertn@umich.edu self.args = [ 'input.source', '1' ] 5113671Sbinkertn@umich.edu 5123671Sbinkertn@umich.educlass gzip_log(gzip): 5133671Sbinkertn@umich.edu def ref(self, isa, os): 5145361Srstrong@cs.ucsd.edu self.simpoint = 265*100E6 5153671Sbinkertn@umich.edu self.args = [ 'input.log', '60' ] 5163671Sbinkertn@umich.edu def smred(self, isa, os): 5173671Sbinkertn@umich.edu self.args = [ 'input.log', '1' ] 5183671Sbinkertn@umich.edu def mdred(self, isa, os): 5193671Sbinkertn@umich.edu self.args = [ 'input.log', '1' ] 5203671Sbinkertn@umich.edu def lgred(self, isa, os): 5213671Sbinkertn@umich.edu self.args = [ 'input.log', '1' ] 5223671Sbinkertn@umich.edu 5233671Sbinkertn@umich.educlass gzip_graphic(gzip): 5243671Sbinkertn@umich.edu def ref(self, isa, os): 5255361Srstrong@cs.ucsd.edu self.simpoint = 653*100E6 5263671Sbinkertn@umich.edu self.args = [ 'input.graphic', '60' ] 5273671Sbinkertn@umich.edu def smred(self, isa, os): 5283671Sbinkertn@umich.edu self.args = [ 'input.graphic', '1' ] 5293671Sbinkertn@umich.edu def mdred(self, isa, os): 5303671Sbinkertn@umich.edu self.args = [ 'input.graphic', '1' ] 5313671Sbinkertn@umich.edu def lgred(self, isa, os): 5323671Sbinkertn@umich.edu self.args = [ 'input.graphic', '1' ] 5333671Sbinkertn@umich.edu 5343671Sbinkertn@umich.educlass gzip_random(gzip): 5353671Sbinkertn@umich.edu def ref(self, isa, os): 5365361Srstrong@cs.ucsd.edu self.simpoint = 623*100E6 5373671Sbinkertn@umich.edu self.args = [ 'input.random', '60' ] 5383671Sbinkertn@umich.edu def smred(self, isa, os): 5393671Sbinkertn@umich.edu self.args = [ 'input.random', '1' ] 5403671Sbinkertn@umich.edu def mdred(self, isa, os): 5413671Sbinkertn@umich.edu self.args = [ 'input.random', '1' ] 5423671Sbinkertn@umich.edu def lgred(self, isa, os): 5433671Sbinkertn@umich.edu self.args = [ 'input.random', '1' ] 5443671Sbinkertn@umich.edu 5453671Sbinkertn@umich.educlass gzip_program(gzip): 5463671Sbinkertn@umich.edu def ref(self, isa, os): 5475361Srstrong@cs.ucsd.edu self.simpoint = 1189*100E6 5483671Sbinkertn@umich.edu self.args = [ 'input.program', '60' ] 5493671Sbinkertn@umich.edu def smred(self, isa, os): 5503671Sbinkertn@umich.edu self.args = [ 'input.program', '1' ] 5513671Sbinkertn@umich.edu def mdred(self, isa, os): 5523671Sbinkertn@umich.edu self.args = [ 'input.program', '1' ] 5533671Sbinkertn@umich.edu def lgred(self, isa, os): 5543671Sbinkertn@umich.edu self.args = [ 'input.program', '1' ] 5553671Sbinkertn@umich.edu 5563671Sbinkertn@umich.educlass mcf(MinneDefaultBenchmark): 5573671Sbinkertn@umich.edu name = 'mcf' 5583671Sbinkertn@umich.edu number = 181 5593671Sbinkertn@umich.edu lang = 'C' 5604271Sgblack@eecs.umich.edu args = [ 'mcf.in' ] 5615361Srstrong@cs.ucsd.edu simpoint = 553*100E6 5623671Sbinkertn@umich.edu 5633671Sbinkertn@umich.educlass parser(MinneDefaultBenchmark): 5643671Sbinkertn@umich.edu name = 'parser' 5653671Sbinkertn@umich.edu number = 197 5663671Sbinkertn@umich.edu lang = 'C' 5673671Sbinkertn@umich.edu args = [ '2.1.dict', '-batch' ] 5685361Srstrong@cs.ucsd.edu simpoint = 1146*100E6 5693671Sbinkertn@umich.edu 5703671Sbinkertn@umich.educlass perlbmk(DefaultBenchmark): 5713671Sbinkertn@umich.edu name = 'perlbmk' 5723671Sbinkertn@umich.edu number = 253 5733671Sbinkertn@umich.edu lang = 'C' 5743671Sbinkertn@umich.edu 5753671Sbinkertn@umich.edu def test(self, isa, os): 5763671Sbinkertn@umich.edu self.args = [ '-I.', '-I', 'lib', 'test.pl' ] 5773671Sbinkertn@umich.edu self.stdin = 'test.in' 5783671Sbinkertn@umich.edu 5793671Sbinkertn@umich.educlass perlbmk_diffmail(perlbmk): 5803671Sbinkertn@umich.edu def ref(self, isa, os): 5815361Srstrong@cs.ucsd.edu self.simpoint = 141*100E6 5823671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'diffmail.pl', '2', '550', '15', '24', 5833671Sbinkertn@umich.edu '23', '100' ] 5843671Sbinkertn@umich.edu 5853671Sbinkertn@umich.edu def train(self, isa, os): 5863671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'diffmail.pl', '2', '350', '15', '24', 5873671Sbinkertn@umich.edu '23', '150' ] 5883671Sbinkertn@umich.edu 5893671Sbinkertn@umich.educlass perlbmk_scrabbl(perlbmk): 5903671Sbinkertn@umich.edu def train(self, isa, os): 5913671Sbinkertn@umich.edu self.args = [ '-I.', '-I', 'lib', 'scrabbl.pl' ] 5923671Sbinkertn@umich.edu self.stdin = 'scrabbl.in' 5933671Sbinkertn@umich.edu 5943671Sbinkertn@umich.educlass perlbmk_makerand(perlbmk): 5953671Sbinkertn@umich.edu def ref(self, isa, os): 5965361Srstrong@cs.ucsd.edu self.simpoint = 11*100E6 5973671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'makerand.pl' ] 5983671Sbinkertn@umich.edu 5993671Sbinkertn@umich.edu def lgred(self, isa, os): 6003671Sbinkertn@umich.edu self.args = [ '-I.', '-I', 'lib', 'lgred.makerand.pl' ] 6013671Sbinkertn@umich.edu 6023671Sbinkertn@umich.edu def mdred(self, isa, os): 6033671Sbinkertn@umich.edu self.args = [ '-I.', '-I', 'lib', 'mdred.makerand.pl' ] 6043671Sbinkertn@umich.edu 6053671Sbinkertn@umich.edu def smred(self, isa, os): 6063671Sbinkertn@umich.edu self.args = [ '-I.', '-I', 'lib', 'smred.makerand.pl' ] 6073671Sbinkertn@umich.edu 6083671Sbinkertn@umich.educlass perlbmk_perfect(perlbmk): 6093671Sbinkertn@umich.edu def ref(self, isa, os): 6105361Srstrong@cs.ucsd.edu self.simpoint = 5*100E6 6113671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'perfect.pl', 'b', '3', 'm', '4' ] 6123671Sbinkertn@umich.edu 6133671Sbinkertn@umich.edu def train(self, isa, os): 6143671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'perfect.pl', 'b', '3' ] 6153671Sbinkertn@umich.edu 6163671Sbinkertn@umich.educlass perlbmk_splitmail1(perlbmk): 6173671Sbinkertn@umich.edu def ref(self, isa, os): 6185361Srstrong@cs.ucsd.edu self.simpoint = 405*100E6 6193671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'splitmail.pl', '850', '5', '19', 6203671Sbinkertn@umich.edu '18', '1500' ] 6213671Sbinkertn@umich.edu 6223671Sbinkertn@umich.educlass perlbmk_splitmail2(perlbmk): 6233671Sbinkertn@umich.edu def ref(self, isa, os): 6243671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'splitmail.pl', '704', '12', '26', 6253671Sbinkertn@umich.edu '16', '836' ] 6263671Sbinkertn@umich.edu 6273671Sbinkertn@umich.educlass perlbmk_splitmail3(perlbmk): 6283671Sbinkertn@umich.edu def ref(self, isa, os): 6293671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'splitmail.pl', '535', '13', '25', 6303671Sbinkertn@umich.edu '24', '1091' ] 6313671Sbinkertn@umich.edu 6323671Sbinkertn@umich.educlass perlbmk_splitmail4(perlbmk): 6333671Sbinkertn@umich.edu def ref(self, isa, os): 6343671Sbinkertn@umich.edu self.args = [ '-I', 'lib', 'splitmail.pl', '957', '12', '23', 6353671Sbinkertn@umich.edu '26', '1014' ] 6363671Sbinkertn@umich.edu 6373671Sbinkertn@umich.educlass twolf(Benchmark): 6383671Sbinkertn@umich.edu name = 'twolf' 6393671Sbinkertn@umich.edu number = 300 6403671Sbinkertn@umich.edu lang = 'C' 6413671Sbinkertn@umich.edu stdin = None 6423671Sbinkertn@umich.edu 6433671Sbinkertn@umich.edu def test(self, isa, os): 6443671Sbinkertn@umich.edu self.args = [ 'test' ] 6453671Sbinkertn@umich.edu 6463671Sbinkertn@umich.edu def train(self, isa, os): 6473671Sbinkertn@umich.edu self.args = [ 'train' ] 6483671Sbinkertn@umich.edu 6493671Sbinkertn@umich.edu def ref(self, isa, os): 6505361Srstrong@cs.ucsd.edu self.simpoint = 1066*100E6 6513671Sbinkertn@umich.edu self.args = [ 'ref' ] 6523671Sbinkertn@umich.edu 6533671Sbinkertn@umich.edu def smred(self, isa, os): 6543671Sbinkertn@umich.edu self.args = [ 'smred' ] 6553671Sbinkertn@umich.edu 6563671Sbinkertn@umich.edu def mdred(self, isa, os): 6573671Sbinkertn@umich.edu self.args = [ 'mdred' ] 6583671Sbinkertn@umich.edu 6593671Sbinkertn@umich.edu def lgred(self, isa, os): 6603671Sbinkertn@umich.edu self.args = [ 'lgred' ] 6613671Sbinkertn@umich.edu 6623671Sbinkertn@umich.educlass vortex(Benchmark): 6633671Sbinkertn@umich.edu name = 'vortex' 6643671Sbinkertn@umich.edu number = 255 6653671Sbinkertn@umich.edu lang = 'C' 6663671Sbinkertn@umich.edu stdin = None 6673671Sbinkertn@umich.edu 6683671Sbinkertn@umich.edu def __init__(self, isa, os, input_set): 66910037SARM gem5 Developers if (isa in ('alpha', 'arm', 'thumb', 'aarch64')): 6703671Sbinkertn@umich.edu self.endian = 'lendian' 6714116Sgblack@eecs.umich.edu elif (isa == 'sparc' or isa == 'sparc32'): 6724116Sgblack@eecs.umich.edu self.endian = 'bendian' 6733671Sbinkertn@umich.edu else: 67413731Sandreas.sandberg@arm.com raise AttributeError("unknown ISA %s" % isa) 6753671Sbinkertn@umich.edu 6763671Sbinkertn@umich.edu super(vortex, self).__init__(isa, os, input_set) 6773671Sbinkertn@umich.edu 6783671Sbinkertn@umich.edu def test(self, isa, os): 6793671Sbinkertn@umich.edu self.args = [ '%s.raw' % self.endian ] 6803671Sbinkertn@umich.edu self.output = 'vortex.out' 6813671Sbinkertn@umich.edu 6823671Sbinkertn@umich.edu def train(self, isa, os): 6833671Sbinkertn@umich.edu self.args = [ '%s.raw' % self.endian ] 6843671Sbinkertn@umich.edu self.output = 'vortex.out' 6853671Sbinkertn@umich.edu 6863671Sbinkertn@umich.edu def smred(self, isa, os): 6873671Sbinkertn@umich.edu self.args = [ '%s.raw' % self.endian ] 6883671Sbinkertn@umich.edu self.output = 'vortex.out' 6893671Sbinkertn@umich.edu 6903671Sbinkertn@umich.edu def mdred(self, isa, os): 6913671Sbinkertn@umich.edu self.args = [ '%s.raw' % self.endian ] 6923671Sbinkertn@umich.edu self.output = 'vortex.out' 6933671Sbinkertn@umich.edu 6943671Sbinkertn@umich.edu def lgred(self, isa, os): 6953671Sbinkertn@umich.edu self.args = [ '%s.raw' % self.endian ] 6963671Sbinkertn@umich.edu self.output = 'vortex.out' 6973671Sbinkertn@umich.edu 6983671Sbinkertn@umich.educlass vortex1(vortex): 6993671Sbinkertn@umich.edu def ref(self, isa, os): 7003671Sbinkertn@umich.edu self.args = [ '%s1.raw' % self.endian ] 7013671Sbinkertn@umich.edu self.output = 'vortex1.out' 7025361Srstrong@cs.ucsd.edu self.simpoint = 271*100E6 7033671Sbinkertn@umich.edu 7043671Sbinkertn@umich.edu 7053671Sbinkertn@umich.educlass vortex2(vortex): 7063671Sbinkertn@umich.edu def ref(self, isa, os): 7075361Srstrong@cs.ucsd.edu self.simpoint = 1024*100E6 7083671Sbinkertn@umich.edu self.args = [ '%s2.raw' % self.endian ] 7093671Sbinkertn@umich.edu self.output = 'vortex2.out' 7103671Sbinkertn@umich.edu 7113671Sbinkertn@umich.educlass vortex3(vortex): 7123671Sbinkertn@umich.edu def ref(self, isa, os): 7135361Srstrong@cs.ucsd.edu self.simpoint = 564*100E6 7143671Sbinkertn@umich.edu self.args = [ '%s3.raw' % self.endian ] 7153671Sbinkertn@umich.edu self.output = 'vortex3.out' 7163671Sbinkertn@umich.edu 7173671Sbinkertn@umich.educlass vpr(MinneDefaultBenchmark): 7183671Sbinkertn@umich.edu name = 'vpr' 7193671Sbinkertn@umich.edu number = 175 7203671Sbinkertn@umich.edu lang = 'C' 7213671Sbinkertn@umich.edu 7223671Sbinkertn@umich.edu# not sure about vpr minnespec place.in 7233671Sbinkertn@umich.educlass vpr_place(vpr): 7243671Sbinkertn@umich.edu args = [ 'net.in', 'arch.in', 'place.out', 'dum.out', '-nodisp', 7253671Sbinkertn@umich.edu '-place_only', '-init_t', '5', '-exit_t', '0.005', 7263671Sbinkertn@umich.edu '-alpha_t', '0.9412', '-inner_num', '2' ] 7273671Sbinkertn@umich.edu output = 'place_log.out' 7283671Sbinkertn@umich.edu 7293671Sbinkertn@umich.educlass vpr_route(vpr): 7305361Srstrong@cs.ucsd.edu simpoint = 476*100E6 7313671Sbinkertn@umich.edu args = [ 'net.in', 'arch.in', 'place.in', 'route.out', '-nodisp', 7323671Sbinkertn@umich.edu '-route_only', '-route_chan_width', '15', 7333671Sbinkertn@umich.edu '-pres_fac_mult', '2', '-acc_fac', '1', 7343671Sbinkertn@umich.edu '-first_iter_pres_fac', '4', '-initial_pres_fac', '8' ] 7353671Sbinkertn@umich.edu output = 'route_log.out' 7363671Sbinkertn@umich.edu 7378657SAli.Saidi@ARM.comall = [ ammp, applu, apsi, art, art110, art470, equake, facerec, fma3d, galgel, 7383671Sbinkertn@umich.edu lucas, mesa, mgrid, sixtrack, swim, wupwise, bzip2_source, 7393671Sbinkertn@umich.edu bzip2_graphic, bzip2_program, crafty, eon_kajiya, eon_cook, 7403671Sbinkertn@umich.edu eon_rushmeier, gap, gcc_166, gcc_200, gcc_expr, gcc_integrate, 7413671Sbinkertn@umich.edu gcc_scilab, gzip_source, gzip_log, gzip_graphic, gzip_random, 7423671Sbinkertn@umich.edu gzip_program, mcf, parser, perlbmk_diffmail, perlbmk_makerand, 7433671Sbinkertn@umich.edu perlbmk_perfect, perlbmk_splitmail1, perlbmk_splitmail2, 7443671Sbinkertn@umich.edu perlbmk_splitmail3, perlbmk_splitmail4, twolf, vortex1, vortex2, 7453671Sbinkertn@umich.edu vortex3, vpr_place, vpr_route ] 7463671Sbinkertn@umich.edu 7473671Sbinkertn@umich.edu__all__ = [ x.__name__ for x in all ] 7483671Sbinkertn@umich.edu 7493671Sbinkertn@umich.eduif __name__ == '__main__': 7503671Sbinkertn@umich.edu from pprint import pprint 7513671Sbinkertn@umich.edu for bench in all: 7523671Sbinkertn@umich.edu for input_set in 'ref', 'test', 'train': 75312564Sgabeblack@google.com print('class: %s' % bench.__name__) 7543671Sbinkertn@umich.edu x = bench('alpha', 'tru64', input_set) 75512564Sgabeblack@google.com print('%s: %s' % (x, input_set)) 75611851Sbrandon.potter@amd.com pprint(x.makeProcessArgs()) 75712564Sgabeblack@google.com print() 758