diff options
author | Jakob Botsch Nielsen <Jakob.botsch.nielsen@gmail.com> | 2022-10-27 18:14:07 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-27 18:14:07 +0300 |
commit | dc27e26caace2b8be3b263644d08bd564648ed94 (patch) | |
tree | f73287b125c612913a233f6d72a61c76f11f7485 /eng | |
parent | e459c4e0708da7d32163ad485e93b4df9aeffb8d (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.yml | 50 | ||||
-rw-r--r-- | eng/pipelines/coreclr/pgostress.yml | 6 | ||||
-rw-r--r-- | eng/pipelines/libraries/run-test-job.yml | 27 |
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 |