1# Copyright (c) 2006-2008 The Regents of The University of Michigan |
2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: redistributions of source code must retain the above copyright 7# notice, this list of conditions and the following disclaimer; 8# redistributions in binary form must reproduce the above copyright 9# notice, this list of conditions and the following disclaimer in the --- 70 unchanged lines hidden (view full) --- 80 self.binary = self.name 81 82 if not hasattr(self.__class__, 'args'): 83 self.args = [] 84 85 if not hasattr(self.__class__, 'output'): 86 self.output = '%s.out' % self.name 87 |
88 if not hasattr(self.__class__, 'simpoint'): 89 self.simpoint = None 90 |
91 try: 92 func = getattr(self.__class__, input_set) 93 except AttributeError: 94 raise AttributeError, \ 95 'The benchmark %s does not have the %s input set' % \ 96 (self.name, input_set) 97 98 executable = joinpath(spec_dist, 'binaries', isa, os, self.binary) --- 36 unchanged lines hidden (view full) --- 135 # set up default args for LiveProcess object 136 process_args = {} 137 process_args['cmd'] = [ self.name ] + self.args 138 process_args['executable'] = self.executable 139 if self.stdin: 140 process_args['input'] = self.stdin 141 if self.stdout: 142 process_args['output'] = self.stdout |
143 process_args['simpoint'] = self.simpoint |
144 # explicit keywords override defaults 145 process_args.update(kwargs) 146 147 return process_args 148 149 def makeLiveProcess(self, **kwargs): 150 process_args = self.makeLiveProcessArgs(**kwargs) 151 152 # figure out working directory: use m5's outdir unless 153 # overridden by LiveProcess's cwd param 154 cwd = process_args.get('cwd') |
155 |
156 if not cwd: 157 from m5.main import options 158 cwd = options.outdir 159 process_args['cwd'] = cwd 160 if not isdir(cwd): 161 os.makedirs(cwd) 162 # copy input files to working directory 163 for d in self.inputs_dir: --- 14 unchanged lines hidden (view full) --- 178 def smred(self, isa, os): pass 179 def mdred(self, isa, os): pass 180 def lgred(self, isa, os): pass 181 182class ammp(MinneDefaultBenchmark): 183 name = 'ammp' 184 number = 188 185 lang = 'C' |
186 simpoint = 108*100E6 |
187 188class applu(MinneDefaultBenchmark): 189 name = 'applu' 190 number = 173 191 lang = 'F77' |
192 simpoint = 2179*100E6 |
193 194class apsi(MinneDefaultBenchmark): 195 name = 'apsi' 196 number = 301 197 lang = 'F77' |
198 simpoint = 3408*100E6 |
199 200class art(DefaultBenchmark): 201 name = 'art' 202 number = 179 203 lang = 'C' 204 205 def test(self, isa, os): 206 self.args = [ '-scanfile', 'c756hel.in', --- 36 unchanged lines hidden (view full) --- 243 '-trainfile2', 'hc.img', 244 '-stride', '2', 245 '-startx', '110', 246 '-starty', '200', 247 '-endx', '160', 248 '-endy', '240', 249 '-objects', '10' ] 250 self.output = 'ref.1.out' |
251 self.simpoint = 340*100E6 |
252 253class art470(art): 254 def ref(self, isa, os): 255 self.args = [ '-scanfile', 'c756hel.in', 256 '-trainfile1', 'a10.img', 257 '-trainfile2', 'hc.img', 258 '-stride', '2', 259 '-startx', '470', 260 '-starty', '140', 261 '-endx', '520', 262 '-endy', '180', 263 '-objects', '10' ] 264 self.output = 'ref.2.out' |
265 self.simpoint = 365*100E6 |
266 267class equake(DefaultBenchmark): 268 name = 'equake' 269 number = 183 270 lang = 'C' |
271 simpoint = 812*100E6 |
272 273 def lgred(self, isa, os): pass 274 275class facerec(MinneDefaultBenchmark): 276 name = 'facerec' 277 number = 187 278 lang = 'F' |
279 simpoint = 375*100E6 |
280 281class fma3d(MinneDefaultBenchmark): 282 name = 'fma3d' 283 number = 191 284 lang = 'F' |
285 simpoint = 2541*100E6 |
286 287class galgel(MinneDefaultBenchmark): 288 name = 'galgel' 289 number = 178 290 lang = 'F' |
291 simpoint = 2491*100E6 |
292 293class lucas(MinneDefaultBenchmark): 294 name = 'lucas' 295 number = 189 296 lang = 'F' |
297 simpoint = 545*100E6 |
298 299class mesa(Benchmark): 300 name = 'mesa' 301 number = 177 302 lang = 'C' 303 stdin = None 304 305 def __set_args(self, frames): 306 self.args = [ '-frames', frames, '-meshfile', '%s.in' % self.name, 307 '-ppmfile', '%s.ppm' % self.name ] 308 309 def test(self, isa, os): 310 self.__set_args('10') 311 312 def train(self, isa, os): 313 self.__set_args('500') 314 315 def ref(self, isa, os): 316 self.__set_args('1000') |
317 self.simpoint = 1135*100E6 |
318 319 def lgred(self, isa, os): 320 self.__set_args('1') 321 322class mgrid(MinneDefaultBenchmark): 323 name = 'mgrid' 324 number = 172 325 lang = 'F77' |
326 simpoint = 3292*100E6 |
327 328class sixtrack(DefaultBenchmark): 329 name = 'sixtrack' 330 number = 200 331 lang = 'F77' |
332 simpoint = 3043*100E6 |
333 334 def lgred(self, isa, os): pass 335 336class swim(MinneDefaultBenchmark): 337 name = 'swim' 338 number = 171 339 lang = 'F77' |
340 simpoint = 2079*100E6 |
341 342class wupwise(DefaultBenchmark): 343 name = 'wupwise' 344 number = 168 345 lang = 'F77' |
346 simpoint = 3237*100E6 |
347 348 def lgred(self, isa, os): pass 349 350class bzip2(DefaultBenchmark): 351 name = 'bzip2' 352 number = 256 353 lang = 'C' 354 355 def test(self, isa, os): 356 self.args = [ 'input.random' ] 357 358 def train(self, isa, os): 359 self.args = [ 'input.compressed' ] 360 361class bzip2_source(bzip2): 362 def ref(self, isa, os): |
363 self.simpoint = 977*100E6 |
364 self.args = [ 'input.source', '58' ] 365 366 def lgred(self, isa, os): 367 self.args = [ 'input.source', '1' ] 368 369class bzip2_graphic(bzip2): 370 def ref(self, isa, os): |
371 self.simpoint = 718*100E6 |
372 self.args = [ 'input.graphic', '58' ] 373 374 def lgred(self, isa, os): 375 self.args = [ 'input.graphic', '1' ] 376 377class bzip2_program(bzip2): 378 def ref(self, isa, os): |
379 self.simpoint = 458*100E6 |
380 self.args = [ 'input.program', '58' ] 381 382 def lgred(self, isa, os): 383 self.args = [ 'input.program', '1' ] 384 385class crafty(MinneDefaultBenchmark): 386 name = 'crafty' 387 number = 186 388 lang = 'C' |
389 simpoint = 774*100E6 |
390 391class eon(MinneDefaultBenchmark): 392 name = 'eon' 393 number = 252 394 lang = 'CXX' 395 stdin = None 396 397class eon_kajiya(eon): --- 6 unchanged lines hidden (view full) --- 404 args = [ 'chair.control.cook', 'chair.camera', 'chair.surfaces', 405 'chair.cook.ppm', 'ppm', 'pixels_out.cook' ] 406 output = 'cook_log.out' 407 408class eon_rushmeier(eon): 409 args = [ 'chair.control.rushmeier', 'chair.camera', 'chair.surfaces', 410 'chair.rushmeier.ppm', 'ppm', 'pixels_out.rushmeier' ] 411 output = 'rushmeier_log.out' |
412 simpoint = 403*100E6 |
413 414class gap(DefaultBenchmark): 415 name = 'gap' 416 number = 254 417 lang = 'C' 418 419 def __set_args(self, size): 420 self.args = [ '-l', './', '-q', '-m', size ] 421 422 def test(self, isa, os): 423 self.__set_args('64M') 424 425 def train(self, isa, os): 426 self.__set_args('128M') 427 428 def ref(self, isa, os): 429 self.__set_args('192M') |
430 self.simpoint = 674*100E6 |
431 432 def lgred(self, isa, os): 433 self.__set_args('64M') 434 435 def mdred(self, isa, os): 436 self.__set_args('64M') 437 438 def smred(self, isa, os): --- 16 unchanged lines hidden (view full) --- 455 def mdred(self, isa, os): 456 self.args = [ 'rdlanal.i', '-o', 'rdlanal.s' ] 457 458 def lgred(self, isa, os): 459 self.args = [ 'cp-decl.i', '-o', 'cp-decl.s' ] 460 461class gcc_166(gcc): 462 def ref(self, isa, os): |
463 self.simpoint = 389*100E6 |
464 self.args = [ '166.i', '-o', '166.s' ] 465 466class gcc_200(gcc): 467 def ref(self, isa, os): |
468 self.simpoint = 736*100E6 |
469 self.args = [ '200.i', '-o', '200.s' ] 470 471class gcc_expr(gcc): 472 def ref(self, isa, os): |
473 self.simpoint = 36*100E6 |
474 self.args = [ 'expr.i', '-o', 'expr.s' ] 475 476class gcc_integrate(gcc): 477 def ref(self, isa, os): |
478 self.simpoint = 4*100E6 |
479 self.args = [ 'integrate.i', '-o', 'integrate.s' ] 480 481class gcc_scilab(gcc): 482 def ref(self, isa, os): |
483 self.simpoint = 207*100E6 |
484 self.args = [ 'scilab.i', '-o', 'scilab.s' ] 485 486class gzip(DefaultBenchmark): 487 name = 'gzip' 488 number = 164 489 lang = 'C' 490 491 def test(self, isa, os): 492 self.args = [ 'input.compressed', '2' ] 493 494 def train(self, isa, os): 495 self.args = [ 'input.combined', '32' ] 496 497class gzip_source(gzip): 498 def ref(self, isa, os): |
499 self.simpoint = 334*100E6 |
500 self.args = [ 'input.source', '1' ] 501 def smred(self, isa, os): 502 self.args = [ 'input.source', '1' ] 503 def mdred(self, isa, os): 504 self.args = [ 'input.source', '1' ] 505 def lgred(self, isa, os): 506 self.args = [ 'input.source', '1' ] 507 508class gzip_log(gzip): 509 def ref(self, isa, os): |
510 self.simpoint = 265*100E6 |
511 self.args = [ 'input.log', '60' ] 512 def smred(self, isa, os): 513 self.args = [ 'input.log', '1' ] 514 def mdred(self, isa, os): 515 self.args = [ 'input.log', '1' ] 516 def lgred(self, isa, os): 517 self.args = [ 'input.log', '1' ] 518 519class gzip_graphic(gzip): 520 def ref(self, isa, os): |
521 self.simpoint = 653*100E6 |
522 self.args = [ 'input.graphic', '60' ] 523 def smred(self, isa, os): 524 self.args = [ 'input.graphic', '1' ] 525 def mdred(self, isa, os): 526 self.args = [ 'input.graphic', '1' ] 527 def lgred(self, isa, os): 528 self.args = [ 'input.graphic', '1' ] 529 530class gzip_random(gzip): 531 def ref(self, isa, os): |
532 self.simpoint = 623*100E6 |
533 self.args = [ 'input.random', '60' ] 534 def smred(self, isa, os): 535 self.args = [ 'input.random', '1' ] 536 def mdred(self, isa, os): 537 self.args = [ 'input.random', '1' ] 538 def lgred(self, isa, os): 539 self.args = [ 'input.random', '1' ] 540 541class gzip_program(gzip): 542 def ref(self, isa, os): |
543 self.simpoint = 1189*100E6 |
544 self.args = [ 'input.program', '60' ] 545 def smred(self, isa, os): 546 self.args = [ 'input.program', '1' ] 547 def mdred(self, isa, os): 548 self.args = [ 'input.program', '1' ] 549 def lgred(self, isa, os): 550 self.args = [ 'input.program', '1' ] 551 552class mcf(MinneDefaultBenchmark): 553 name = 'mcf' 554 number = 181 555 lang = 'C' 556 args = [ 'mcf.in' ] |
557 simpoint = 553*100E6 |
558 559class parser(MinneDefaultBenchmark): 560 name = 'parser' 561 number = 197 562 lang = 'C' 563 args = [ '2.1.dict', '-batch' ] |
564 simpoint = 1146*100E6 |
565 566class perlbmk(DefaultBenchmark): 567 name = 'perlbmk' 568 number = 253 569 lang = 'C' 570 571 def test(self, isa, os): 572 self.args = [ '-I.', '-I', 'lib', 'test.pl' ] 573 self.stdin = 'test.in' 574 575class perlbmk_diffmail(perlbmk): 576 def ref(self, isa, os): |
577 self.simpoint = 141*100E6 |
578 self.args = [ '-I', 'lib', 'diffmail.pl', '2', '550', '15', '24', 579 '23', '100' ] 580 581 def train(self, isa, os): 582 self.args = [ '-I', 'lib', 'diffmail.pl', '2', '350', '15', '24', 583 '23', '150' ] 584 585class perlbmk_scrabbl(perlbmk): 586 def train(self, isa, os): 587 self.args = [ '-I.', '-I', 'lib', 'scrabbl.pl' ] 588 self.stdin = 'scrabbl.in' 589 590class perlbmk_makerand(perlbmk): 591 def ref(self, isa, os): |
592 self.simpoint = 11*100E6 |
593 self.args = [ '-I', 'lib', 'makerand.pl' ] 594 595 def lgred(self, isa, os): 596 self.args = [ '-I.', '-I', 'lib', 'lgred.makerand.pl' ] 597 598 def mdred(self, isa, os): 599 self.args = [ '-I.', '-I', 'lib', 'mdred.makerand.pl' ] 600 601 def smred(self, isa, os): 602 self.args = [ '-I.', '-I', 'lib', 'smred.makerand.pl' ] 603 604class perlbmk_perfect(perlbmk): 605 def ref(self, isa, os): |
606 self.simpoint = 5*100E6 |
607 self.args = [ '-I', 'lib', 'perfect.pl', 'b', '3', 'm', '4' ] 608 609 def train(self, isa, os): 610 self.args = [ '-I', 'lib', 'perfect.pl', 'b', '3' ] 611 612class perlbmk_splitmail1(perlbmk): 613 def ref(self, isa, os): |
614 self.simpoint = 405*100E6 |
615 self.args = [ '-I', 'lib', 'splitmail.pl', '850', '5', '19', 616 '18', '1500' ] 617 618class perlbmk_splitmail2(perlbmk): 619 def ref(self, isa, os): 620 self.args = [ '-I', 'lib', 'splitmail.pl', '704', '12', '26', 621 '16', '836' ] 622 --- 15 unchanged lines hidden (view full) --- 638 639 def test(self, isa, os): 640 self.args = [ 'test' ] 641 642 def train(self, isa, os): 643 self.args = [ 'train' ] 644 645 def ref(self, isa, os): |
646 self.simpoint = 1066*100E6 |
647 self.args = [ 'ref' ] 648 649 def smred(self, isa, os): 650 self.args = [ 'smred' ] 651 652 def mdred(self, isa, os): 653 self.args = [ 'mdred' ] 654 --- 35 unchanged lines hidden (view full) --- 690 def lgred(self, isa, os): 691 self.args = [ '%s.raw' % self.endian ] 692 self.output = 'vortex.out' 693 694class vortex1(vortex): 695 def ref(self, isa, os): 696 self.args = [ '%s1.raw' % self.endian ] 697 self.output = 'vortex1.out' |
698 self.simpoint = 271*100E6 |
699 700 701class vortex2(vortex): 702 def ref(self, isa, os): |
703 self.simpoint = 1024*100E6 |
704 self.args = [ '%s2.raw' % self.endian ] 705 self.output = 'vortex2.out' 706 707class vortex3(vortex): 708 def ref(self, isa, os): |
709 self.simpoint = 564*100E6 |
710 self.args = [ '%s3.raw' % self.endian ] 711 self.output = 'vortex3.out' 712 713class vpr(MinneDefaultBenchmark): 714 name = 'vpr' 715 number = 175 716 lang = 'C' 717 718# not sure about vpr minnespec place.in 719class vpr_place(vpr): 720 args = [ 'net.in', 'arch.in', 'place.out', 'dum.out', '-nodisp', 721 '-place_only', '-init_t', '5', '-exit_t', '0.005', 722 '-alpha_t', '0.9412', '-inner_num', '2' ] 723 output = 'place_log.out' 724 725class vpr_route(vpr): |
726 simpoint = 476*100E6 |
727 args = [ 'net.in', 'arch.in', 'place.in', 'route.out', '-nodisp', 728 '-route_only', '-route_chan_width', '15', 729 '-pres_fac_mult', '2', '-acc_fac', '1', 730 '-first_iter_pres_fac', '4', '-initial_pres_fac', '8' ] 731 output = 'route_log.out' 732 733all = [ ammp, applu, apsi, art110, art470, equake, facerec, fma3d, galgel, 734 lucas, mesa, mgrid, sixtrack, swim, wupwise, bzip2_source, --- 19 unchanged lines hidden --- |