comparison mx.graal/sanitycheck.py @ 22792:087d6b3e4c9b

mx gate: add support for --extra-vm-argument.
author Josef Eisl <josef.eisl@jku.at>
date Fri, 09 Oct 2015 15:08:14 +0200
parents c35e3fccb8da
children 28d8c9f880d5
comparison
equal deleted inserted replaced
22791:c356d2e4659d 22792:087d6b3e4c9b
188 success = re.compile(r"^(Noncompliant c|C)omposite result: [0-9]+((,|\.)[0-9]+)?( SPECjvm2008 (Base|Peak))? ops/m$", re.MULTILINE) 188 success = re.compile(r"^(Noncompliant c|C)omposite result: [0-9]+((,|\.)[0-9]+)?( SPECjvm2008 (Base|Peak))? ops/m$", re.MULTILINE)
189 matcher = ValuesMatcher(score, {'group' : 'SPECjvm2008', 'name' : '<benchmark>', 'score' : '<score>'}) 189 matcher = ValuesMatcher(score, {'group' : 'SPECjvm2008', 'name' : '<benchmark>', 'score' : '<score>'})
190 190
191 return Test("SPECjvm2008", ['-jar', 'SPECjvm2008.jar'] + _noneAsEmptyList(benchArgs), [success], [error], [matcher], vmOpts=['-Xms3g', '-XX:+' + gc, '-XX:-UseCompressedOops'], defaultCwd=specjvm2008) 191 return Test("SPECjvm2008", ['-jar', 'SPECjvm2008.jar'] + _noneAsEmptyList(benchArgs), [success], [error], [matcher], vmOpts=['-Xms3g', '-XX:+' + gc, '-XX:-UseCompressedOops'], defaultCwd=specjvm2008)
192 192
193 def getDacapos(level=SanityCheckLevel.Normal, gateBuildLevel=None, dacapoArgs=None): 193 def getDacapos(level=SanityCheckLevel.Normal, gateBuildLevel=None, dacapoArgs=None, extraVmArguments=None):
194 checks = [] 194 checks = []
195 195
196 for (bench, ns) in dacapoSanityWarmup.items(): 196 for (bench, ns) in dacapoSanityWarmup.items():
197 if ns[level] > 0: 197 if ns[level] > 0:
198 if gateBuildLevel is None or gateBuildLevel in dacapoGateBuildLevels[bench]: 198 if gateBuildLevel is None or gateBuildLevel in dacapoGateBuildLevels[bench]:
199 checks.append(getDacapo(bench, ['-n', str(ns[level])] + _noneAsEmptyList(dacapoArgs))) 199 checks.append(getDacapo(bench, ['-n', str(ns[level])] + _noneAsEmptyList(dacapoArgs), extraVmArguments=extraVmArguments))
200 200
201 return checks 201 return checks
202 202
203 def getDacapo(name, dacapoArgs=None): 203 def getDacapo(name, dacapoArgs=None, extraVmArguments=None):
204 dacapo = mx.get_env('DACAPO_CP') 204 dacapo = mx.get_env('DACAPO_CP')
205 if dacapo is None: 205 if dacapo is None:
206 l = mx.library('DACAPO', False) 206 l = mx.library('DACAPO', False)
207 if l is not None: 207 if l is not None:
208 dacapo = l.get_path(True) 208 dacapo = l.get_path(True)
219 219
220 dacapoMatcher = ValuesMatcher(dacapoTime, {'group' : 'DaCapo', 'name' : '<benchmark>', 'score' : '<time>'}) 220 dacapoMatcher = ValuesMatcher(dacapoTime, {'group' : 'DaCapo', 'name' : '<benchmark>', 'score' : '<time>'})
221 dacapoMatcher1 = ValuesMatcher(dacapoTime1, {'group' : 'DaCapo-1stRun', 'name' : '<benchmark>', 'score' : '<time>'}) 221 dacapoMatcher1 = ValuesMatcher(dacapoTime1, {'group' : 'DaCapo-1stRun', 'name' : '<benchmark>', 'score' : '<time>'})
222 222
223 # Use ipv4 stack for dacapos; tomcat+solaris+ipv6_interface fails (see also: JDK-8072384) 223 # Use ipv4 stack for dacapos; tomcat+solaris+ipv6_interface fails (see also: JDK-8072384)
224 return Test("DaCapo-" + name, ['-jar', mx._cygpathU2W(dacapo), name] + _noneAsEmptyList(dacapoArgs), [dacapoSuccess], [dacapoFail], [dacapoMatcher, dacapoMatcher1], ['-Xms2g', '-XX:+' + gc, '-XX:-UseCompressedOops', "-Djava.net.preferIPv4Stack=true"]) 224 return Test("DaCapo-" + name, ['-jar', mx._cygpathU2W(dacapo), name] + _noneAsEmptyList(dacapoArgs), [dacapoSuccess], [dacapoFail], [dacapoMatcher, dacapoMatcher1], ['-Xms2g', '-XX:+' + gc, '-XX:-UseCompressedOops', "-Djava.net.preferIPv4Stack=true"] + _noneAsEmptyList(extraVmArguments))
225 225
226 def getScalaDacapos(level=SanityCheckLevel.Normal, gateBuildLevel=None, dacapoArgs=None): 226 def getScalaDacapos(level=SanityCheckLevel.Normal, gateBuildLevel=None, dacapoArgs=None, extraVmArguments=None):
227 checks = [] 227 checks = []
228 228
229 for (bench, ns) in dacapoScalaSanityWarmup.items(): 229 for (bench, ns) in dacapoScalaSanityWarmup.items():
230 if ns[level] > 0: 230 if ns[level] > 0:
231 if gateBuildLevel is None or gateBuildLevel in dacapoScalaGateBuildLevels[bench]: 231 if gateBuildLevel is None or gateBuildLevel in dacapoScalaGateBuildLevels[bench]:
232 checks.append(getScalaDacapo(bench, ['-n', str(ns[level])] + _noneAsEmptyList(dacapoArgs))) 232 checks.append(getScalaDacapo(bench, ['-n', str(ns[level])] + _noneAsEmptyList(dacapoArgs), extraVmArguments=extraVmArguments))
233 233
234 return checks 234 return checks
235 235
236 def getScalaDacapo(name, dacapoArgs=None): 236 def getScalaDacapo(name, dacapoArgs=None, extraVmArguments=None):
237 dacapo = mx.get_env('DACAPO_SCALA_CP') 237 dacapo = mx.get_env('DACAPO_SCALA_CP')
238 if dacapo is None: 238 if dacapo is None:
239 l = mx.library('DACAPO_SCALA', False) 239 l = mx.library('DACAPO_SCALA', False)
240 if l is not None: 240 if l is not None:
241 dacapo = l.get_path(True) 241 dacapo = l.get_path(True)
249 dacapoFail = re.compile(r"^===== DaCapo 0\.1\.0(-SNAPSHOT)? ([a-zA-Z0-9_]+) FAILED (warmup|) =====", re.MULTILINE) 249 dacapoFail = re.compile(r"^===== DaCapo 0\.1\.0(-SNAPSHOT)? ([a-zA-Z0-9_]+) FAILED (warmup|) =====", re.MULTILINE)
250 dacapoTime = re.compile(r"===== DaCapo 0\.1\.0(-SNAPSHOT)? (?P<benchmark>[a-zA-Z0-9_]+) PASSED in (?P<time>[0-9]+) msec =====") 250 dacapoTime = re.compile(r"===== DaCapo 0\.1\.0(-SNAPSHOT)? (?P<benchmark>[a-zA-Z0-9_]+) PASSED in (?P<time>[0-9]+) msec =====")
251 251
252 dacapoMatcher = ValuesMatcher(dacapoTime, {'group' : "Scala-DaCapo", 'name' : '<benchmark>', 'score' : '<time>'}) 252 dacapoMatcher = ValuesMatcher(dacapoTime, {'group' : "Scala-DaCapo", 'name' : '<benchmark>', 'score' : '<time>'})
253 253
254 return Test("Scala-DaCapo-" + name, ['-jar', mx._cygpathU2W(dacapo), name] + _noneAsEmptyList(dacapoArgs), [dacapoSuccess], [dacapoFail], [dacapoMatcher], ['-Xms2g', '-XX:+' + gc, '-XX:-UseCompressedOops']) 254 return Test("Scala-DaCapo-" + name, ['-jar', mx._cygpathU2W(dacapo), name] + _noneAsEmptyList(dacapoArgs), [dacapoSuccess], [dacapoFail], [dacapoMatcher], ['-Xms2g', '-XX:+' + gc, '-XX:-UseCompressedOops'] + _noneAsEmptyList(extraVmArguments))
255 255
256 def getBootstraps(): 256 def getBootstraps():
257 time = re.compile(r"Bootstrapping Graal\.+ in (?P<time>[0-9]+) ms( \(compiled (?P<methods>[0-9]+) methods\))?") 257 time = re.compile(r"Bootstrapping Graal\.+ in (?P<time>[0-9]+) ms( \(compiled (?P<methods>[0-9]+) methods\))?")
258 scoreMatcher = ValuesMatcher(time, {'group' : 'Bootstrap', 'name' : 'BootstrapTime', 'score' : '<time>'}) 258 scoreMatcher = ValuesMatcher(time, {'group' : 'Bootstrap', 'name' : 'BootstrapTime', 'score' : '<time>'})
259 methodMatcher = ValuesMatcher(time, {'group' : 'Bootstrap', 'name' : 'BootstrapMethods', 'score' : '<methods>'}) 259 methodMatcher = ValuesMatcher(time, {'group' : 'Bootstrap', 'name' : 'BootstrapMethods', 'score' : '<methods>'})