Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/runtime.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/eng
diff options
context:
space:
mode:
authorJakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com>2022-10-27 18:14:07 +0300
committerGitHub <noreply@github.com>2022-10-27 18:14:07 +0300
commitdc27e26caace2b8be3b263644d08bd564648ed94 (patch)
treef73287b125c612913a233f6d72a61c76f11f7485 /eng
parente459c4e0708da7d32163ad485e93b4df9aeffb8d (diff)
Scale back PGO and jit-experimental testing (#77484)
Introduce pgostress job that runs weekly instead of daily and move most of the runtime-coreclr pgo scenarios to this job. Scale back on win-arm/win-arm64 testing in pgo, libraries-pgo and jit-experimental. Clean up jobs in general based on new defaults. * Remove nopgo run * Remove dynamicpgo and set TC_QuickJitForLoops=1 explicitly in defaultpgo. Since this is default in x64/arm64 the only difference was in x86/arm32, and I don't think TieredPGO+QuickJitForLoops=0 is important enough to warrant a full run. * Remove jitosr_pgo, jitpartialcompilation_osr, jitpartialcompilation_osr_pgo. These are equivalent to other configurations with the current defaults. * Remove fullpgo_random_edge in favor of just fullpgo_random_gdv_edge * Update jit-experimental's timeout to be in line with the PGO job timeout, given that this is running priority 1 tests and frequently times out too. * Scale back win-arm32 and win-arm64 testing in pgo, libraries-pgo and jit-experimental. Run fewer of the scenarios in these pipelines under win-arm and win-arm64 since these queues are relatively weak, and the differences to the JIT between these configurations and linux-arm/linux-arm64 are relatively minor.
Diffstat (limited to 'eng')
-rw-r--r--eng/pipelines/common/templates/runtimes/run-test-job.yml50
-rw-r--r--eng/pipelines/coreclr/pgostress.yml6
-rw-r--r--eng/pipelines/libraries/run-test-job.yml27
3 files changed, 46 insertions, 37 deletions
diff --git a/eng/pipelines/common/templates/runtimes/run-test-job.yml b/eng/pipelines/common/templates/runtimes/run-test-job.yml
index 41b1094fdad..da6d2bf8387 100644
--- a/eng/pipelines/common/templates/runtimes/run-test-job.yml
+++ b/eng/pipelines/common/templates/runtimes/run-test-job.yml
@@ -238,7 +238,7 @@ jobs:
value: 180
- name: timeoutPerTestInMinutes
value: 30
- - ${{ if in(parameters.testGroup, 'pgo') }}:
+ - ${{ if in(parameters.testGroup, 'pgo', 'pgostress') }}:
- name: timeoutPerTestCollectionInMinutes
value: 120
- ${{ if in(parameters.testGroup, 'jit-cfg') }}:
@@ -260,13 +260,13 @@ jobs:
timeoutInMinutes: 300
${{ else }}:
timeoutInMinutes: 200
- ${{ if in(parameters.testGroup, 'outerloop', 'jit-experimental', 'jit-cfg') }}:
+ ${{ if in(parameters.testGroup, 'outerloop', 'jit-cfg') }}:
timeoutInMinutes: 270
${{ if in(parameters.testGroup, 'gc-longrunning', 'gc-simulator') }}:
timeoutInMinutes: 480
${{ if in(parameters.testGroup, 'jitstress', 'jitstress-random', 'jitstress-isas-arm', 'jitstressregs-x86', 'jitstressregs', 'jitstress2-jitstressregs', 'gcstress0x3-gcstress0xc', 'ilasm') }}:
timeoutInMinutes: 390
- ${{ if in(parameters.testGroup, 'gcstress-extra', 'r2r-extra', 'clrinterpreter', 'pgo') }}:
+ ${{ if in(parameters.testGroup, 'gcstress-extra', 'r2r-extra', 'clrinterpreter', 'pgo', 'pgostress', 'jit-experimental') }}:
timeoutInMinutes: 510
${{ if eq(parameters.testGroup, 'jitstress-isas-x86') }}:
timeoutInMinutes: 960
@@ -588,15 +588,21 @@ jobs:
- gcstress0xc
${{ if in(parameters.testGroup, 'pgo') }}:
scenarios:
- - nopgo
- defaultpgo
- - dynamicpgo
- - fullpgo
- - fullpgo_methodprofiling
- - fullpgo_random_gdv
- - fullpgo_random_gdv_methodprofiling_only
- - fullpgo_random_edge
- - fullpgo_random_gdv_edge
+ ${{ if in(parameters.testGroup, 'pgostress') }}:
+ # We run a limited number of scenarios on the win-arm64 queues as we hit frequent timeouts on those queues otherwise.
+ # The loss of coverage is not critical as win-arm64/win-arm32 are practically equivalent to linux-arm64/linux-arm32 to the JIT.
+ ${{ if and(eq(parameters.osGroup, 'windows'), or(eq(parameters.archType, 'arm64'), eq(parameters.archType, 'arm'))) }}:
+ scenarios:
+ - fullpgo
+ - fullpgo_random_gdv_edge
+ ${{ else }}:
+ scenarios:
+ - fullpgo
+ - fullpgo_methodprofiling
+ - fullpgo_random_gdv
+ - fullpgo_random_gdv_methodprofiling_only
+ - fullpgo_random_gdv_edge
${{ if in(parameters.testGroup, 'gc-longrunning') }}:
longRunningGcTests: true
scenarios:
@@ -616,15 +622,19 @@ jobs:
- jitelthookenabled
- jitelthookenabled_tiered
${{ if in(parameters.testGroup, 'jit-experimental') }}:
- scenarios:
- - jitosr_stress
- - jitosr_pgo
- - jitosr_stress_random
- - jit_stress_splitting
- - jitpartialcompilation
- - jitpartialcompilation_osr
- - jitpartialcompilation_osr_pgo
- - jitobjectstackallocation
+ ${{ if and(eq(parameters.osGroup, 'windows'), or(eq(parameters.archType, 'arm64'), eq(parameters.archType, 'arm'))) }}:
+ scenarios:
+ - jitosr_stress
+ - jitpartialcompilation_pgo
+ ${{ else }}:
+ scenarios:
+ - jitosr_stress
+ - jitosr_stress_random
+ - jit_stress_splitting
+ - jitpartialcompilation
+ - jitpartialcompilation_pgo
+ - jitobjectstackallocation
+
${{ if in(parameters.testGroup, 'jit-cfg') }}:
scenarios:
- jitcfg
diff --git a/eng/pipelines/coreclr/pgostress.yml b/eng/pipelines/coreclr/pgostress.yml
index 0f21cca6779..c1d33c17cf9 100644
--- a/eng/pipelines/coreclr/pgostress.yml
+++ b/eng/pipelines/coreclr/pgostress.yml
@@ -28,7 +28,7 @@ extends:
- windows_x86
- CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
jobParameters:
- testGroup: pgo-extra
+ testGroup: pgostress
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
@@ -37,7 +37,7 @@ extends:
platforms:
- CoreClrTestBuildHost # Either OSX_x64 or Linux_x64
jobParameters:
- testGroup: pgo-extra
+ testGroup: pgostress
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
@@ -55,5 +55,5 @@ extends:
helixQueueGroup: ci
helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
jobParameters:
- testGroup: pgo-extra
+ testGroup: pgostress
liveLibrariesBuildConfig: Release
diff --git a/eng/pipelines/libraries/run-test-job.yml b/eng/pipelines/libraries/run-test-job.yml
index a4dc96fb496..c8378b28c94 100644
--- a/eng/pipelines/libraries/run-test-job.yml
+++ b/eng/pipelines/libraries/run-test-job.yml
@@ -173,17 +173,16 @@ jobs:
- gcstress0xc_jitstress2
- gcstress0xc_jitminopts_heapverify1
${{ if in(parameters.coreclrTestGroup, 'pgo') }}:
- scenarios:
- - nopgo
- - defaultpgo
- - dynamicpgo
- - fullpgo
- - fullpgo_methodprofiling
- - fullpgo_random_gdv
- - fullpgo_random_gdv_methodprofiling_only
- - fullpgo_random_edge
- - fullpgo_random_gdv_edge
- - jitosr_stress
- - jitosr_stress_random
- - jitosr_pgo
-
+ ${{ if and(eq(parameters.osGroup, 'windows'), or(eq(parameters.archType, 'arm64'), eq(parameters.archType, 'arm'))) }}:
+ scenarios:
+ - defaultpgo
+ ${{ else }}:
+ scenarios:
+ - defaultpgo
+ - fullpgo
+ - fullpgo_methodprofiling
+ - fullpgo_random_gdv
+ - fullpgo_random_gdv_methodprofiling_only
+ - fullpgo_random_gdv_edge
+ - jitosr_stress
+ - jitosr_stress_random