# HG changeset patch # User Gilles Duboscq # Date 1343315334 -7200 # Node ID 0e54d9bb922d2980cac7456a7e561ee28c48066c # Parent c21886d4e125ddd027650fd2415d50af98f0fc14 Add SPECjbb2005 to the benchmarks diff -r c21886d4e125 -r 0e54d9bb922d mx/commands.py --- a/mx/commands.py Thu Jul 26 14:51:13 2012 +0200 +++ b/mx/commands.py Thu Jul 26 17:08:54 2012 +0200 @@ -878,6 +878,9 @@ specjvms = [a[12:] for a in args if a.startswith('specjvm2008:')] for specjvm in specjvms: benchmarks += [sanitycheck.getSPECjvm2008([specjvm], True, 120, 120)] + + if ('specjbb2005' in args or 'all' in args): + benchmarks += [sanitycheck.getSPECjbb2005()] for test in benchmarks: for (group, res) in test.bench(vm).items(): diff -r c21886d4e125 -r 0e54d9bb922d mx/sanitycheck.py --- a/mx/sanitycheck.py Thu Jul 26 14:51:13 2012 +0200 +++ b/mx/sanitycheck.py Thu Jul 26 17:08:54 2012 +0200 @@ -96,6 +96,19 @@ class SanityCheckLevel: Fast, Gate, Normal, Extensive, Benchmark = range(5) +def getSPECjbb2005(benchArgs = []): + + specjbb2005 = mx.get_env('SPECJBB2005') + if specjbb2005 is None or not exists(join(specjbb2005, 'jbb.jar')): + mx.abort('Please set the SPECJBB2005 environment variable to a SPECjbb2005 directory') + + score = re.compile(r"^Valid run, Score is (?P[0-9]+)$") + error = re.compile(r"VALIDATION ERROR") + success = re.compile(r"^Valid run, Score is [0-9]+$") + matcher = Matcher(score, {'const:group' : "const:SPECjbb2005", 'const:name' : 'const:score', 'const:score' : 'score'}) + classpath = ['jbb.jar', 'check.jar'] + return Test("SPECjbb2005", ['spec.jbb.JBBmain', '-propfile', 'SPECjbb.props'] + benchArgs, [success], [error], [matcher], vmOpts=['-Xms3g', '-XX:+UseSerialGC', '-cp', os.pathsep.join(classpath)], defaultCwd=specjbb2005) + def getSPECjvm2008(benchArgs = [], skipKitValidation=False, warmupTime=None, iterationTime=None): specjvm2008 = mx.get_env('SPECJVM2008')