Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
b68920a
Add blazor hybrid globalization runs
LoopedBard3 Jul 24, 2023
19f1061
First pass at adding iOS hybrid globalization.
LoopedBard3 Jul 24, 2023
7d22f82
Fix Yaml errors.
LoopedBard3 Jul 24, 2023
05d4f90
Add yaml schedule.
LoopedBard3 Jul 24, 2023
05b6ee5
Setup testing.
LoopedBard3 Jul 24, 2023
eb857cd
Add TestHybridGlobalization deeper into the yaml.
LoopedBard3 Jul 24, 2023
bc350da
Remove testing stuff.
LoopedBard3 Jul 26, 2023
575d6b3
Try simplifying the number of files added and more properly pass the …
LoopedBard3 Jul 26, 2023
4961110
Revert "Remove testing stuff."
LoopedBard3 Jul 26, 2023
f57b69a
Fix yaml error.
LoopedBard3 Jul 26, 2023
25f93aa
Stringify hybridGlobalizationParameter.
LoopedBard3 Jul 31, 2023
54cc7f5
Update condition.
LoopedBard3 Jul 31, 2023
5edad90
Change globalHybridization to be a string instead of bool for hopeful…
LoopedBard3 Aug 1, 2023
beddb10
Remove wasm from testing for now since ubuntu queues are low.
LoopedBard3 Aug 1, 2023
b37b5f0
Revert "Remove wasm from testing for now since ubuntu queues are low."
LoopedBard3 Aug 2, 2023
b2f10d8
Revert "Revert "Remove testing stuff.""
LoopedBard3 Aug 2, 2023
c07a9d7
Fix wasm performance setup run.
LoopedBard3 Aug 8, 2023
8e9b5ab
Revert "Revert "Revert "Remove testing stuff."""
LoopedBard3 Aug 8, 2023
65d1f18
Switch to using hybridGlobalization inline rather than duplicating cl…
LoopedBard3 Aug 8, 2023
0c0c9e2
Update to passing an artifact name append string instead
LoopedBard3 Aug 15, 2023
f87ada8
Address feedback and try new artifact naming convention.
LoopedBard3 Aug 17, 2023
c64d7fa
Fix minor errors.
LoopedBard3 Aug 17, 2023
189353d
Fix spacing in NativeAOT Makefile and make performance-setup.sh match…
LoopedBard3 Aug 22, 2023
9f341df
Finish removing artifactNameAppendString.
LoopedBard3 Aug 22, 2023
0806316
Add comment explaining non-default configs test naming.
LoopedBard3 Aug 23, 2023
211f437
Update the Blazor and iOS test names to take into account hybridGloba…
LoopedBard3 Aug 23, 2023
9c50a5d
Only add the hybridglobalization run config when it is true (explicit…
LoopedBard3 Aug 23, 2023
f58e362
Setup consistent hybridglobalization true test.
LoopedBard3 Aug 25, 2023
7f24bd8
Fix blazor --msbuild argument quotes.
LoopedBard3 Sep 1, 2023
55080ef
Fix blazor msbuild argument.
LoopedBard3 Sep 6, 2023
c0bcaee
Don't run Minimum blazor when running for hybridGlobalization since t…
LoopedBard3 Sep 11, 2023
0c0e3c8
"Remove testing stuff."
LoopedBard3 Sep 11, 2023
e989a2a
Setup the v8 profile to always be the one that is ran since the non-…
LoopedBard3 Sep 12, 2023
996367c
Change per PR feedback.
LoopedBard3 Sep 18, 2023
32b8c31
Fixed didn't->don't and unnecessary quote update per PR feedback.
LoopedBard3 Sep 22, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
147 changes: 141 additions & 6 deletions eng/pipelines/coreclr/perf-non-wasm-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,159 @@ jobs:

- ${{ if and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:

# build mono
# build mono iOS scenarios HybridGlobalization
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/mono/templates/build-job.yml
jobTemplate: /eng/pipelines/common/global-build-job.yml
buildConfig: release
runtimeFlavor: mono
platforms:
- ios_arm64
jobParameters:
buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
nameSuffix: iOSMono
isOfficialBuild: false
extraStepsTemplate: /eng/pipelines/coreclr/templates/build-perf-sample-apps.yml
extraStepsParameters:
rootFolder: '$(Build.SourcesDirectory)/artifacts/'
includeRootFolder: true
displayName: iOS Mono Artifacts
artifactName: iOSMonoarm64
archiveExtension: '.tar.gz'
archiveType: tar
tarCompression: gz
hybridGlobalization: True

# build NativeAOT iOS scenarios HybridGlobalization
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/common/global-build-job.yml
buildConfig: release
runtimeFlavor: coreclr
platforms:
- linux_x64
- ios_arm64
jobParameters:
buildArgs: --cross -s clr.alljits+clr.tools+clr.nativeaotruntime+clr.nativeaotlibs+libs -c $(_BuildConfig)
nameSuffix: iOSNativeAOT
isOfficialBuild: false
extraStepsTemplate: /eng/pipelines/coreclr/templates/build-perf-sample-apps.yml
extraStepsParameters:
rootFolder: '$(Build.SourcesDirectory)/artifacts/'
includeRootFolder: true
displayName: iOS NativeAOT Artifacts
artifactName: iOSNativeAOTarm64
archiveExtension: '.tar.gz'
archiveType: tar
tarCompression: gz
hybridGlobalization: True

# build coreclr and libraries
# run mono iOS scenarios scenarios HybridGlobalization
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/common/build-coreclr-and-libraries-job.yml
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: mono
platforms:
- linux_x64
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSMono
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSLlvmBuild: False
iOSStripSymbols: False
hybridGlobalization: True

- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: mono
platforms:
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSMono
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSLlvmBuild: False
iOSStripSymbols: True
hybridGlobalization: True

- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: mono
platforms:
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSMono
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSLlvmBuild: True
iOSStripSymbols: False
hybridGlobalization: True

- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: mono
platforms:
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSMono
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSLlvmBuild: True
iOSStripSymbols: True
hybridGlobalization: True

# run NativeAOT iOS scenarios HybridGlobalization
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: coreclr
platforms:
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSNativeAOT
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSStripSymbols: False
hybridGlobalization: True

- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: coreclr
platforms:
- osx_x64
jobParameters:
testGroup: perf
runtimeType: iOSNativeAOT
projectFile: ios_scenarios.proj
runKind: ios_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfiphone12mini'
iOSStripSymbols: True
hybridGlobalization: True

- ${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:

Expand Down
22 changes: 22 additions & 0 deletions eng/pipelines/coreclr/perf-wasm-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -171,3 +171,25 @@ jobs:
logicalmachine: 'perftiger'
downloadSpecificBuild: ${{ parameters.downloadSpecificBuild }}
perfForkToUse: ${{ parameters.perfForkToUse }}

- ${{if and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
# run mono wasm blazor perf job
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
buildConfig: release
runtimeFlavor: wasm
platforms:
- linux_x64
jobParameters:
testGroup: perf
liveLibrariesBuildConfig: Release
skipLiveLibrariesDownload: true
runtimeType: wasm
projectFile: blazor_perf.proj
runKind: blazor_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perftiger'
downloadSpecificBuild: ${{ parameters.downloadSpecificBuild }}
perfForkToUse: ${{ parameters.perfForkToUse }}
hybridGlobalization: True
16 changes: 8 additions & 8 deletions eng/pipelines/coreclr/perf.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ variables:
# Since, we are not running *any* perf jobs, none of these builds are needed,
# thus the whole scheduled run can be disabled.
#
#schedules:
#- cron: "30 2 * * *"
#displayName: Every night at 2:30AM
#branches:
#include:
#- main
#always: true
schedules:
- cron: "0 0 * * 1"
displayName: Weekly Monday 12am UTC Build
branches:
include:
- main
always: true

extends:
template: /eng/pipelines/common/templates/pipeline-with-resources.yml
Expand All @@ -47,7 +47,7 @@ extends:
collectHelixLogsScript: ${{ variables._wasmCollectHelixLogsScript }}
#${{ and(ne(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'Schedule')) }}:
# runProfile: 'non-v8'
${{ if and(ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'Schedule')) }}:
${{ if ne(variables['System.TeamProject'], 'public') }}:
runProfile: 'v8'

- template: /eng/pipelines/coreclr/perf-non-wasm-jobs.yml
37 changes: 19 additions & 18 deletions eng/pipelines/coreclr/templates/build-perf-sample-apps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ parameters:
archiveExtension: ''
archiveType: ''
tarCompression: ''
hybridGlobalization: False

steps:
# Build Android sample app
Expand All @@ -37,11 +38,11 @@ steps:
displayName: clean bindir

- ${{ if and(eq(parameters.osGroup, 'ios'), eq(parameters.nameSuffix, 'iOSMono')) }}:
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=False DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=False DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Build HelloiOS AOT sample app LLVM=False STRIP_SYMBOLS=False
displayName: Build HelloiOS AOT sample app LLVM=False STRIP_SYMBOLS=False HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -53,17 +54,17 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App NoLLVM
artifactName: iOSSampleAppNoLLVMSymbols
artifactName: iOSSampleAppNoLLVMSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip
- script: rm -r -f $(Build.SourcesDirectory)/src/mono/sample/iOS/bin
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Clean bindir
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=False DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=False DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Build HelloiOS AOT sample app LLVM=False STRIP_SYMBOLS=True
displayName: Build HelloiOS AOT sample app LLVM=False STRIP_SYMBOLS=True HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -75,17 +76,17 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App NoLLVM NoSymbols
artifactName: iOSSampleAppNoLLVMNoSymbols
artifactName: iOSSampleAppNoLLVMNoSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip
- script: rm -r -f $(Build.SourcesDirectory)/src/mono/sample/iOS/bin
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Clean bindir
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=True DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=True DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Build HelloiOS AOT sample app LLVM=True STRIP_SYMBOLS=False
displayName: Build HelloiOS AOT sample app LLVM=True STRIP_SYMBOLS=False HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -97,17 +98,17 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App LLVM
artifactName: iOSSampleAppLLVMSymbols
artifactName: iOSSampleAppLLVMSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip
- script: rm -r -f $(Build.SourcesDirectory)/src/mono/sample/iOS/bin
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Clean bindir
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=True DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true
- script: make build-appbundle TARGET=ios MONO_ARCH=arm64 MONO_CONFIG=Release AOT=True USE_LLVM=True DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS
displayName: Build HelloiOS AOT sample app LLVM=True STRIP_SYMBOLS=True
displayName: Build HelloiOS AOT sample app LLVM=True STRIP_SYMBOLS=True HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -119,16 +120,16 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App LLVM NoSymbols
artifactName: iOSSampleAppLLVMNoSymbols
artifactName: iOSSampleAppLLVMNoSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip

- ${{ if and(eq(parameters.osGroup, 'ios'), eq(parameters.nameSuffix, 'iOSNativeAOT')) }}:
- script: make hello-app TARGET_OS=ios TARGET_ARCH=arm64 BUILD_CONFIG=Release DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false
- script: make hello-app TARGET_OS=ios TARGET_ARCH=arm64 BUILD_CONFIG=Release DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=false HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT
displayName: Build HelloiOS Native AOT sample app STRIP_SYMBOLS=False
displayName: Build HelloiOS Native AOT sample app STRIP_SYMBOLS=False HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -140,17 +141,17 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App Symbols
artifactName: iOSSampleAppSymbols
artifactName: iOSSampleAppSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip
- script: rm -r -f $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT/bin
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT
displayName: Clean bindir
- script: make hello-app TARGET_OS=ios TARGET_ARCH=arm64 BUILD_CONFIG=Release DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true
- script: make hello-app TARGET_OS=ios TARGET_ARCH=arm64 BUILD_CONFIG=Release DEPLOY_AND_RUN=false STRIP_DEBUG_SYMBOLS=true HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
env:
DevTeamProvisioning: '-'
workingDirectory: $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT
displayName: Build HelloiOS Native AOT sample app STRIP_SYMBOLS=True
displayName: Build HelloiOS Native AOT sample app STRIP_SYMBOLS=True HYBRID_GLOBALIZATION=${{ parameters.hybridGlobalization }}
- task: PublishBuildArtifacts@1
condition: succeededOrFailed()
displayName: 'Publish binlog'
Expand All @@ -162,6 +163,6 @@ steps:
rootFolder: $(Build.SourcesDirectory)/src/mono/sample/iOS-NativeAOT/bin/ios-arm64/Bundle/HelloiOS/Release-iphoneos/HelloiOS.app
includeRootFolder: true
displayName: iOS Sample App NoSymbols
artifactName: iOSSampleAppNoSymbols
artifactName: iOSSampleAppNoSymbolsHybridGlobalization${{parameters.hybridGlobalization}}
archiveExtension: '.zip'
archiveType: zip
Loading