Skip to content

Commit e4ccabb

Browse files
authored
[PERF][MAUI] Add Maui runs for net7.0 (#71979)
* Part 1 of adding Net7.0: Duplicated building work and added the names in the obvious places they needed to be. * Add net6 versions of android and iOS scenarios, removing Mono ones from them since we are not building mono for net6 * Finished duplicating net6 versions of stuff in perf.yml and perf-job.yml (Section that redownloads jobs for perf running) * Renamed runtimetype to mobile for net6 stuff. Adding file copying to the setup files so mono is not copied for net6. Updated the runkind for net6 runs. * Fix dependency names. * Undo renaming of the build artifacts. * Setup target and prop files for net6 and set them for the net6 pipeline. * Added back in dotnet version download to download the latest version, and added specific dotnet calls back into the build perf maui apps. * Remove mono startup testing from android net6 mobile testing. * Lowered the number of BlazorMaui iOS startup iterations from 7 to 5. * Set version to one in preview.6 to match the net7.0 versions used in rollback file. * Add setting the result in the blazor ios device startup runs. * Make the downloaded version more clear by adding Net6 to Net6 app download versions.
1 parent f970923 commit e4ccabb

12 files changed

+853
-83
lines changed

eng/pipelines/coreclr/perf.yml

Lines changed: 75 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ jobs:
238238
- Windows_x64
239239
variables:
240240
- name: mauiVersion
241-
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMaui.outputs['getMauiVersion.mauiVersion'] ]
241+
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMauiNet7.outputs['getMauiVersion.mauiVersion'] ]
242242
jobParameters:
243243
testGroup: perf
244244
runtimeType: AndroidMono
@@ -258,7 +258,7 @@ jobs:
258258
- OSX_x64
259259
variables:
260260
- name: mauiVersion
261-
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMaui.outputs['getMauiVersion.mauiVersion'] ]
261+
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMauiNet7.outputs['getMauiVersion.mauiVersion'] ]
262262
jobParameters:
263263
testGroup: perf
264264
runtimeType: iOSMono
@@ -278,7 +278,7 @@ jobs:
278278
- OSX_x64
279279
variables:
280280
- name: mauiVersion
281-
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMaui.outputs['getMauiVersion.mauiVersion'] ]
281+
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMauiNet7.outputs['getMauiVersion.mauiVersion'] ]
282282
jobParameters:
283283
testGroup: perf
284284
runtimeType: iOSMono
@@ -289,6 +289,47 @@ jobs:
289289
iOSLlvmBuild: True
290290
additionalSetupParameters: "--mauiversion $(mauiVersion)"
291291

292+
# run maui android scenarios for net6
293+
- template: /eng/pipelines/common/platform-matrix.yml
294+
parameters:
295+
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
296+
buildConfig: release
297+
runtimeFlavor: mono
298+
platforms:
299+
- Windows_x64
300+
variables:
301+
- name: mauiVersion
302+
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMauiNet6.outputs['getMauiVersion.mauiVersion'] ]
303+
jobParameters:
304+
testGroup: perf
305+
runtimeType: AndroidMobileNet6
306+
projectFile: android_scenarios_net6.proj
307+
runKind: android_scenarios_net6
308+
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
309+
logicalmachine: 'perfpixel4a'
310+
additionalSetupParameters: "-MauiVersion $env:mauiVersion"
311+
312+
# run maui iOS scenarios for net6 (Maui doesn't need Llmv true build (for net6))
313+
- template: /eng/pipelines/common/platform-matrix.yml
314+
parameters:
315+
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
316+
buildConfig: release
317+
runtimeFlavor: mono
318+
platforms:
319+
- OSX_x64
320+
variables:
321+
- name: mauiVersion
322+
value: $[ dependencies.Build_iOS_arm64_release_MACiOSAndroidMauiNet6.outputs['getMauiVersion.mauiVersion'] ]
323+
jobParameters:
324+
testGroup: perf
325+
runtimeType: iOSMobileNet6
326+
projectFile: ios_scenarios_net6.proj
327+
runKind: ios_scenarios_net6
328+
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
329+
logicalmachine: 'perfiphone12mini'
330+
iOSLlvmBuild: False
331+
additionalSetupParameters: "--mauiversion $(mauiVersion)"
332+
292333
# run mono microbenchmarks perf job
293334
- template: /eng/pipelines/common/platform-matrix.yml
294335
parameters:
@@ -530,7 +571,7 @@ jobs:
530571
# extraStepsParameters:
531572
# name: MonoRuntimePacks
532573

533-
# build maui app
574+
# build maui app net7.0
534575
- template: /eng/pipelines/common/platform-matrix.yml
535576
parameters:
536577
jobTemplate: /eng/pipelines/common/global-build-job.yml
@@ -539,7 +580,7 @@ jobs:
539580
platforms:
540581
- iOS_arm64
541582
jobParameters:
542-
# Uncomment to reenable package replacement
583+
# Uncomment to reenable package replacement for main
543584
#dependsOn:
544585
# - Build_Android_arm_release_Maui_Packs_Mono
545586
# - Build_Android_arm64_release_Maui_Packs_Mono
@@ -550,16 +591,41 @@ jobs:
550591
# - Build_iOS_arm_release_Maui_Packs_Mono
551592
# - Build_iOS_arm64_release_Maui_Packs_Mono
552593
buildArgs: -s mono -c $(_BuildConfig)
553-
nameSuffix: MACiOSAndroidMaui
594+
nameSuffix: MACiOSAndroidMauiNet7
554595
isOfficialBuild: false
555596
pool:
556597
vmImage: 'macos-11'
557-
extraStepsTemplate: /eng/pipelines/coreclr/templates/build-perf-maui-apps.yml
598+
extraStepsTemplate: /eng/pipelines/coreclr/templates/build-perf-maui-apps-net7.yml
558599
extraStepsParameters:
559600
rootFolder: '$(Build.SourcesDirectory)/artifacts/'
560601
includeRootFolder: true
561-
displayName: MAC, iOS, and Android Maui Artifacts
562-
artifactName: MACiOSAndroidMauiArm
602+
displayName: MAC, iOS, and Android Maui Artifacts Net7
603+
artifactName: MACiOSAndroidMauiArmNet7
563604
archiveExtension: '.tar.gz'
564605
archiveType: tar
565606
tarCompression: gz
607+
608+
# build maui app net6.0
609+
- template: /eng/pipelines/common/platform-matrix.yml
610+
parameters:
611+
jobTemplate: /eng/pipelines/common/global-build-job.yml
612+
buildConfig: release
613+
runtimeFlavor: mono
614+
platforms:
615+
- iOS_arm64
616+
jobParameters:
617+
buildArgs: -s mono -c $(_BuildConfig)
618+
nameSuffix: MACiOSAndroidMauiNet6
619+
isOfficialBuild: false
620+
pool:
621+
vmImage: 'macos-11'
622+
extraStepsTemplate: /eng/pipelines/coreclr/templates/build-perf-maui-apps-net6.yml
623+
extraStepsParameters:
624+
rootFolder: '$(Build.SourcesDirectory)/artifacts/'
625+
includeRootFolder: true
626+
displayName: MAC, iOS, and Android Maui Artifacts Net6
627+
artifactName: MACiOSAndroidMauiArmNet6
628+
archiveExtension: '.tar.gz'
629+
archiveType: tar
630+
tarCompression: gz
631+

0 commit comments

Comments
 (0)