summaryrefslogtreecommitdiff
path: root/perf.groovy
diff options
context:
space:
mode:
authorMichelle McDaniel <adiaaida@gmail.com>2017-02-14 10:11:56 -0800
committerMichelle McDaniel <adiaaida@gmail.com>2017-02-15 14:53:14 -0800
commitde84865c821c91fb1bf05146cf64058633acb91a (patch)
tree27331dc81d0f1ae443512f6a97a509388f0fb5ed /perf.groovy
parent6185a8801d3d4402b3afb728856aa62b86dadb4a (diff)
downloadcoreclr-de84865c821c91fb1bf05146cf64058633acb91a.tar.gz
coreclr-de84865c821c91fb1bf05146cf64058633acb91a.tar.bz2
coreclr-de84865c821c91fb1bf05146cf64058633acb91a.zip
Add perf job for legacy jit
Add performance testing jobs for jit32. This change adds jit32 as an architecture for perf.groovy. It also renames the x86 legs to be x86ryujit. For the two x86-based architectures, we pass a testenv. This is so if we have to switch which version is the default jit on x86, we will not need to change the perf jobs, we can just update the testenv files. This change updates run-xunit-perf.cmd to take a test env script as a parameter and run it before running the tests if it exists. This change also cleans up some of the calls in perf.groovy to use variables that we've already set, rather than baking in the contents of those variables (changing Release to ${configuration}).
Diffstat (limited to 'perf.groovy')
-rw-r--r--perf.groovy29
1 files changed, 21 insertions, 8 deletions
diff --git a/perf.groovy b/perf.groovy
index 1eb9f19525..3561e086a3 100644
--- a/perf.groovy
+++ b/perf.groovy
@@ -27,8 +27,21 @@ def static getOSGroup(def os) {
// Setup perflab tests runs
[true, false].each { isPR ->
['Windows_NT'].each { os ->
- ['x64', 'x86'].each { architecture ->
- def newJob = job(Utilities.getFullJobName(project, "perf_perflab_${os}_${architecture}", isPR)) {
+ ['x64', 'x86', 'x86jit32'].each { arch ->
+ architecture = arch
+ testEnv = ''
+
+ if (arch == 'x86jit32')
+ {
+ architecture = 'x86'
+ testEnv = '-testEnv %WORKSPACE%\\tests\\x86\\compatjit_x86_testenv.cmd'
+ }
+ else if (arch == 'x86')
+ {
+ testEnv = '-testEnv %WORKSPACE%\\tests\\x86\\ryujit_x86_testenv.cmd'
+ }
+
+ def newJob = job(Utilities.getFullJobName(project, "perf_perflab_${os}_${arch}", isPR)) {
// Set the label.
label('windows_clr_perf')
wrappers {
@@ -59,10 +72,10 @@ def static getOSGroup(def os) {
"py \"%WORKSPACE%\\Microsoft.BenchView.JSONFormat\\tools\\submission-metadata.py\" --name " + "\"" + benchViewName + "\"" + " --user " + "\"dotnet-bot@microsoft.com\"\n" +
"py \"%WORKSPACE%\\Microsoft.BenchView.JSONFormat\\tools\\build.py\" git --branch %GIT_BRANCH_WITHOUT_ORIGIN% --type " + runType)
batchFile("py \"%WORKSPACE%\\Microsoft.BenchView.JSONFormat\\tools\\machinedata.py\"")
- batchFile("set __TestIntermediateDir=int&&build.cmd release ${architecture}")
- batchFile("tests\\runtest.cmd release ${architecture} GenerateLayoutOnly")
- batchFile("tests\\scripts\\run-xunit-perf.cmd -arch ${architecture} -configuration ${configuration} -testBinLoc bin\\tests\\Windows_NT.${architecture}.Release\\performance\\perflab\\Perflab -library -uploadToBenchview \"%WORKSPACE%\\Microsoft.Benchview.JSONFormat\\tools\" -runtype " + runType)
- batchFile("tests\\scripts\\run-xunit-perf.cmd -arch ${architecture} -configuration ${configuration} -testBinLoc bin\\tests\\Windows_NT.${architecture}.Release\\Jit\\Performance\\CodeQuality -uploadToBenchview \"%WORKSPACE%\\Microsoft.Benchview.JSONFormat\\tools\" -runtype " + runType)
+ batchFile("set __TestIntermediateDir=int&&build.cmd ${configuration} ${architecture}")
+ batchFile("tests\\runtest.cmd ${configuration} ${architecture} GenerateLayoutOnly")
+ batchFile("tests\\scripts\\run-xunit-perf.cmd -arch ${architecture} -configuration ${configuration} ${testEnv} -testBinLoc bin\\tests\\Windows_NT.${architecture}.${configuration}\\performance\\perflab\\Perflab -library -uploadToBenchview \"%WORKSPACE%\\Microsoft.Benchview.JSONFormat\\tools\" -runtype ${runType}")
+ batchFile("tests\\scripts\\run-xunit-perf.cmd -arch ${architecture} -configuration ${configuration} ${testEnv} -testBinLoc bin\\tests\\Windows_NT.${architecture}.${configuration}\\Jit\\Performance\\CodeQuality -uploadToBenchview \"%WORKSPACE%\\Microsoft.Benchview.JSONFormat\\tools\" -runtype ${runType}")
}
}
@@ -76,9 +89,9 @@ def static getOSGroup(def os) {
if (isPR) {
TriggerBuilder builder = TriggerBuilder.triggerOnPullRequest()
- builder.setGithubContext("${os} ${architecture} CoreCLR Perf Tests")
+ builder.setGithubContext("${os} ${arch} CoreCLR Perf Tests")
builder.triggerOnlyOnComment()
- builder.setCustomTriggerPhrase("(?i).*test\\W+${os}_${architecture}\\W+perf.*")
+ builder.setCustomTriggerPhrase("(?i).*test\\W+${os}_${arch}\\W+perf.*")
builder.triggerForBranch(branch)
builder.emitTrigger(newJob)
}