comparison mx/sanitycheck.py @ 8506:c3657d00e343

-Merge with tip
author Christos Kotselidis <christos.kotselidis@oracle.com>
date Thu, 21 Mar 2013 14:11:13 +0100
parents dee7c8b578c7 39b37e601242
children a38d748d4130
comparison
equal deleted inserted replaced
8505:dee7c8b578c7 8506:c3657d00e343
47 } 47 }
48 48
49 dacapoScalaSanityWarmup = { 49 dacapoScalaSanityWarmup = {
50 'actors': [0, 0, 2, 8, 10], 50 'actors': [0, 0, 2, 8, 10],
51 # (lstadler) apparat was disabled due to a deadlock which I think is the benchmarks fault. 51 # (lstadler) apparat was disabled due to a deadlock which I think is the benchmarks fault.
52 # 'apparat': [0, 0, 1, 2, 3], 52 'apparat': [0, 0, 0, 0, 0],
53 'factorie': [0, 0, 2, 5, 5], 53 'factorie': [0, 0, 2, 5, 5],
54 'kiama': [0, 0, 3, 13, 15], 54 'kiama': [0, 0, 3, 13, 15],
55 'scalac': [0, 0, 5, 15, 20], 55 'scalac': [0, 0, 5, 15, 20],
56 'scaladoc': [0, 0, 5, 15, 15], 56 'scaladoc': [0, 0, 5, 15, 15],
57 'scalap': [0, 0, 5, 15, 20], 57 'scalap': [0, 0, 5, 15, 20],
58 'scalariform':[0, 0, 6, 15, 20], 58 'scalariform':[0, 0, 6, 15, 20],
59 'scalatest': [0, 0, 2, 10, 12], 59 'scalatest': [0, 0, 2, 10, 12],
60 'scalaxb': [0, 0, 5, 15, 25], 60 'scalaxb': [0, 0, 5, 15, 25],
61 'specs': [0, 0, 3, 13, 18], 61 #(gdub) specs sometimes returns a non-zero value event though there is no apparent failure
62 'specs': [0, 0, 0, 0, 0],
62 'tmt': [0, 0, 3, 10, 12] 63 'tmt': [0, 0, 3, 10, 12]
63 } 64 }
64 65
65 dacapoGateBuildLevels = { 66 dacapoGateBuildLevels = {
66 'avrora': ['product', 'fastdebug', 'debug'], 67 'avrora': ['product', 'fastdebug', 'debug'],
119 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) 120 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)
120 #error? 121 #error?
121 success = re.compile(r"org.spec.jbb.controller: Run finished", re.MULTILINE) 122 success = re.compile(r"org.spec.jbb.controller: Run finished", re.MULTILINE)
122 matcherMax = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'max', 'score' : '<max>'}) 123 matcherMax = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'max', 'score' : '<max>'})
123 matcherCritical = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'critical', 'score' : '<critical>'}) 124 matcherCritical = ValuesMatcher(jops, {'group' : 'SPECjbb2013', 'name' : 'critical', 'score' : '<critical>'})
124 return Test("SPECjbb2013", ['-jar', 'specjbb2013.jar', '-m', 'composite'] + benchArgs, [success], [], [matcherCritical, matcherMax], vmOpts=['-Xms7g', '-XX:+'+gc, '-XX:-UseCompressedOops'], defaultCwd=specjbb2013) 125 return Test("SPECjbb2013", ['-jar', 'specjbb2013.jar', '-m', 'composite'] + benchArgs, [success], [], [matcherCritical, matcherMax], vmOpts=['-Xmx6g', '-Xms6g', '-Xmn3g', '-XX:+UseParallelOldGC', '-XX:-UseAdaptiveSizePolicy', '-XX:-UseBiasedLocking', '-XX:-UseCompressedOops'], defaultCwd=specjbb2013)
125 126
126 def getSPECjvm2008(benchArgs = [], skipCheck=False, skipKitValidation=False, warmupTime=None, iterationTime=None): 127 def getSPECjvm2008(benchArgs = [], skipCheck=False, skipKitValidation=False, warmupTime=None, iterationTime=None):
127 128
128 specjvm2008 = mx.get_env('SPECJVM2008') 129 specjvm2008 = mx.get_env('SPECJVM2008')
129 if specjvm2008 is None or not exists(join(specjvm2008, 'SPECjvm2008.jar')): 130 if specjvm2008 is None or not exists(join(specjvm2008, 'SPECjvm2008.jar')):
270 valueMaps = parser.parse(output) 271 valueMaps = parser.parse(output)
271 272
272 if len(valueMaps) == 0: 273 if len(valueMaps) == 0:
273 return False 274 return False
274 275
275 assert len(valueMaps) == 1, 'Test matchers should not return more than one record' 276 record = {}
276 277 for valueMap in valueMaps:
277 record = valueMaps[0] 278 for key, value in valueMap.items():
279 if record.has_key(key) and record[key] != value:
280 mx.abort('Inconsistant values returned by test machers : ' + str(valueMaps))
281 record[key] = value
278 282
279 jvmErrorFile = record.get('jvmError') 283 jvmErrorFile = record.get('jvmError')
280 if jvmErrorFile: 284 if jvmErrorFile:
281 mx.log('/!\\JVM Error : dumping error log...') 285 mx.log('/!\\JVM Error : dumping error log...')
282 with open(jvmErrorFile, 'rb') as fp: 286 with open(jvmErrorFile, 'rb') as fp: