comparison mx/sanitycheck.py @ 7682:5209cd031aec

Merge.
author Christian Humer <christian.humer@gmail.com>
date Mon, 04 Feb 2013 16:40:32 +0100
parents 01aeaf194641
children 9786ac8fff61 41fc46da946a
comparison
equal deleted inserted replaced
7681:f81be78f15a5 7682:5209cd031aec
117 jops = re.compile(r"^RUN RESULT: hbIR \(max attempted\) = [0-9]+, hbIR \(settled\) = [0-9]+, max-jOPS = (?P<max>[0-9]+), critical-jOPS = (?P<critical>[0-9]+)$", re.MULTILINE) 117 jops = re.compile(r"^RUN RESULT: hbIR \(max attempted\) = [0-9]+, hbIR \(settled\) = [0-9]+, max-jOPS = (?P<max>[0-9]+), critical-jOPS = (?P<critical>[0-9]+)$", re.MULTILINE)
118 #error? 118 #error?
119 success = re.compile(r"org.spec.jbb.controller: Run finished", re.MULTILINE) 119 success = re.compile(r"org.spec.jbb.controller: Run finished", re.MULTILINE)
120 matcherMax = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'max', 'score' : '<max>'}) 120 matcherMax = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'max', 'score' : '<max>'})
121 matcherCritical = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'critical', 'score' : '<critical>'}) 121 matcherCritical = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'critical', 'score' : '<critical>'})
122 return Test("SPECjbb2013", ['-jar', 'specjbb2013.jar', '-m', 'composite'] + benchArgs, [success], [], [matcherCritical, matcherMax], vmOpts=['-Xms7g', '-XX:+UseSerialGC', '-XX:-UseCompressedOops', '-XX:CompileCommand=exclude,*.FastMath::slowLog'], defaultCwd=specjbb2013) 122 return Test("SPECjbb2013", ['-jar', 'specjbb2013.jar', '-m', 'composite'] + benchArgs, [success], [], [matcherCritical, matcherMax], vmOpts=['-Xms7g', '-XX:+UseSerialGC', '-XX:-UseCompressedOops'], defaultCwd=specjbb2013)
123 123
124 def getSPECjvm2008(benchArgs = [], skipCheck=False, skipKitValidation=False, warmupTime=None, iterationTime=None): 124 def getSPECjvm2008(benchArgs = [], skipCheck=False, skipKitValidation=False, warmupTime=None, iterationTime=None):
125 125
126 specjvm2008 = mx.get_env('SPECJVM2008') 126 specjvm2008 = mx.get_env('SPECJVM2008')
127 if specjvm2008 is None or not exists(join(specjvm2008, 'SPECjvm2008.jar')): 127 if specjvm2008 is None or not exists(join(specjvm2008, 'SPECjvm2008.jar')):
237 self.vmOpts = vmOpts 237 self.vmOpts = vmOpts
238 self.cmd = cmd 238 self.cmd = cmd
239 self.defaultCwd = defaultCwd 239 self.defaultCwd = defaultCwd
240 self.ignoredVMs = ignoredVMs 240 self.ignoredVMs = ignoredVMs
241 self.benchmarkCompilationRate = benchmarkCompilationRate 241 self.benchmarkCompilationRate = benchmarkCompilationRate
242 if benchmarkCompilationRate:
243 self.vmOpts = self.vmOpts + ['-XX:+CITime']
242 244
243 def __str__(self): 245 def __str__(self):
244 return self.name 246 return self.name
245 247
246 def test(self, vm, cwd=None, opts=[], vmbuild=None): 248 def test(self, vm, cwd=None, opts=[], vmbuild=None):
301 parser.addMatcher(ValuesMatcher(failureRE, {'failed' : '1'})) 303 parser.addMatcher(ValuesMatcher(failureRE, {'failed' : '1'}))
302 for scoreMatcher in self.scoreMatchers: 304 for scoreMatcher in self.scoreMatchers:
303 parser.addMatcher(scoreMatcher) 305 parser.addMatcher(scoreMatcher)
304 306
305 if self.benchmarkCompilationRate: 307 if self.benchmarkCompilationRate:
306 opts.append('-XX:+CITime')
307 if vm == 'graal': 308 if vm == 'graal':
308 bps = re.compile(r"ParsedBytecodesPerSecond@final: (?P<rate>[0-9]+)") 309 bps = re.compile(r"ParsedBytecodesPerSecond@final: (?P<rate>[0-9]+)")
309 ibps = re.compile(r"InlinedBytecodesPerSecond@final: (?P<rate>[0-9]+)") 310 ibps = re.compile(r"InlinedBytecodesPerSecond@final: (?P<rate>[0-9]+)")
310 parser.addMatcher(ValuesMatcher(bps, {'group' : 'ParsedBytecodesPerSecond', 'name' : self.name, 'score' : '<rate>'})) 311 parser.addMatcher(ValuesMatcher(bps, {'group' : 'ParsedBytecodesPerSecond', 'name' : self.name, 'score' : '<rate>'}))
311 parser.addMatcher(ValuesMatcher(ibps, {'group' : 'InlinedBytecodesPerSecond', 'name' : self.name, 'score' : '<rate>'})) 312 parser.addMatcher(ValuesMatcher(ibps, {'group' : 'InlinedBytecodesPerSecond', 'name' : self.name, 'score' : '<rate>'}))