performance/helix.yml

161 строка
4.5 KiB
YAML
Исходник Обычный вид История

jobs:
run_performance_job:
runId: 'dotnetperf'
isConsoleApp: true
waitForExit: true
variables:
architecture: 'x64'
queue: ''
framework: 'net8.0'
runCategories: ''
kind: ''
runtimeRepoDir: '../runtime' # A guess that the performance repo is next to the runtime repo
osGroup: 'windows'
osSubGroup: ''
coreRootDir: '{{ runtimeRepoDir }}/artifacts/tests/coreclr/{{ osGroup }}.{{ architecture }}.Release/Tests/Core_Root'
performanceRepoDir: '.'
runName: '{{ buildNumber }}-testing'
buildNumber: 'local'
buildSourceVersion: 'abc123'
buildSourceBranch: 'main'
internal: true
bdnArgs: ''
partitionCount: 5
projectFile: 'performance/eng/performance/helix.proj'
isScenario: false
isLocalBuild: true
sources:
coreRoot:
localFolder: '{{ coreRootDir }}'
performance:
localFolder: '{{ performanceRepoDir }}'
dockerfile: performance/eng/performance/helix_sender.Dockerfile
dockerImageName: helix_sender
dockerCommand: python ./performance/scripts/run_performance_job.py --queue {{ queue }} --framework {{ framework }} --run-kind {{ kind }} --core-root-dir /performance/coreRoot --performance-repo-dir /performance/performance --architecture {{ architecture }} --os-group {{ osGroup }} --os-sub-group {{ osSubGroup }} {% if internal %}--internal{% endif %} --run-categories "{{ runCategories }}" {% if bdnArgs != blank and bdnArgs != empty %} --extra-bdn-args "{{ bdnArgs }}" {% endif %} --partition-count {{ partitionCount }} --project-file {{ projectFile }} {% if isScenario %} --is-scenario {% endif %} {% if isLocalBuild %} --local-build {% endif %}
dockerContextDirectory: .
arguments: '--env HelixAccessToken --env SYSTEM_ACCESSTOKEN --env PerfCommandUploadToken --env PerfCommandUploadTokenLinux'
environmentVariables:
BUILD_BUILDNUMBER: '{{ buildNumber }}'
BUILD_SOURCEVERSION: '{{ buildSourceVersion }}'
BUILD_SOURCEBRANCH: '{{ buildSourceBranch }}'
BUILD_REPOSITORY_NAME: 'dotnet/performance'
SYSTEM_TEAMPROJECT: 'internal'
BUILD_REASON: 'manual'
PERFLAB_RUNNAME: '{{ runName }}'
scenarios:
micro:
benchmark:
job: run_performance_job
variables:
kind: 'micro'
runCategories: 'runtime libraries'
scenarios:
benchmark:
job: run_performance_job
variables:
kind: scenarios
isScenario: true
projectFile: 'performance/eng/performance/scenarios.proj'
profiles:
local:
jobs:
benchmark:
endpoints:
- http://localhost:5010
msft-internal:
jobs:
benchmark:
endpoints:
- http://dotnetperf-crankagent:5001
relay:
jobs:
benchmark:
endpoints:
- https://dotnetperf-crankagent-relay.servicebus.windows.net/dotnetperf-crankagent
win-x64-public:
jobs:
benchmark:
variables:
osGroup: windows
queue: Windows.10.Amd64.Client.Open
internal: false
win-x64:
jobs:
benchmark:
variables:
osGroup: windows
queue: Windows.11.Amd64.Tiger.Perf
win-x64-android-arm64-pixel:
jobs:
benchmark:
variables:
osGroup: windows
Consolidate yaml/script/proj logic into a single python script that is reusable across all contexts (#3806) * CI Python Pipeline * Fix yaml * More bug fixes * Ensure helix access token is propagated * Ensure variables are always defined in yaml * Fix env var parsing * Prevent passing in commit sha for performance ci runs * Ensure root payload dir is created * Fix Nuget.config copy code * More bug fixes for scenarios runs * Remove pip install and ensure payload dir has ending path segment * Also ensure dotnet dir has path segment * Some more fix attempts * Install python packages on osx, fix runtime flavour argument * Try pass perf command token via env * Fix PDN output file path being treated as a directory * Try fix scenarios directories * Install urllib last so that it doesn't get reinstalled by azure storage packages * Don't install packages at the user-level as it will be in a venv * Some more fixes * Fix more bugs * Delete the right directory * Disable node reuse and fix escaping for azure pipelines variables * Don't run apt-get on osx * Debugging the env var * Fix duplicate upload token * Ensure _BuildConfig is set * Default to not internal and fix pdn param * Disable prerequisite check if no prerequisites * Fix some more warnings * Fix not_in_lab value for performance CI runs * Ensure PerfLabGenericEventSourceLTTngProvider is build on ubuntu * Remember to run the command * Ensure updated global.json is copied to payload * Support runCategories and csproj in benchmark_jobs.yml * Fix typo in yaml * Try surround csproj path with quotes to keep backslash * Convert target csproj path to target OS path * Fix performance directory issues * Fix SYSTEM_ACCESSTOKEN not being propagated * Add binlog output when building all scenario dotnet projects * Update scripts/run_performance_job.py Co-authored-by: Parker Bibus <pbibus@hotmail.com> --------- Co-authored-by: Parker Bibus <pbibus@hotmail.com>
2024-02-07 01:02:44 +03:00
queue: Windows.11.Amd64.Pixel.Perf
win-x64-android-arm64-galaxy:
jobs:
benchmark:
variables:
osGroup: windows
queue: Windows.10.Amd64.Galaxy.Perf
win-arm64:
jobs:
benchmark:
variables:
osGroup: windows
architecture: arm64
2024-04-01 23:45:19 +03:00
queue: Windows.11.Arm64.Surf.Perf
win-arm64-ampere:
jobs:
benchmark:
variables:
osGroup: windows
architecture: arm64
queue: Windows.Server.Arm64.Perf
ubuntu-x64-public:
jobs:
benchmark:
variables:
osGroup: linux
queue: Ubuntu.2204.Amd64.Open
internal: false
ubuntu-x64:
jobs:
benchmark:
variables:
osGroup: linux
queue: Ubuntu.2204.Amd64.Tiger.Perf
ubuntu-arm64-ampere:
jobs:
benchmark:
variables:
osGroup: linux
architecture: arm64
Consolidate yaml/script/proj logic into a single python script that is reusable across all contexts (#3806) * CI Python Pipeline * Fix yaml * More bug fixes * Ensure helix access token is propagated * Ensure variables are always defined in yaml * Fix env var parsing * Prevent passing in commit sha for performance ci runs * Ensure root payload dir is created * Fix Nuget.config copy code * More bug fixes for scenarios runs * Remove pip install and ensure payload dir has ending path segment * Also ensure dotnet dir has path segment * Some more fix attempts * Install python packages on osx, fix runtime flavour argument * Try pass perf command token via env * Fix PDN output file path being treated as a directory * Try fix scenarios directories * Install urllib last so that it doesn't get reinstalled by azure storage packages * Don't install packages at the user-level as it will be in a venv * Some more fixes * Fix more bugs * Delete the right directory * Disable node reuse and fix escaping for azure pipelines variables * Don't run apt-get on osx * Debugging the env var * Fix duplicate upload token * Ensure _BuildConfig is set * Default to not internal and fix pdn param * Disable prerequisite check if no prerequisites * Fix some more warnings * Fix not_in_lab value for performance CI runs * Ensure PerfLabGenericEventSourceLTTngProvider is build on ubuntu * Remember to run the command * Ensure updated global.json is copied to payload * Support runCategories and csproj in benchmark_jobs.yml * Fix typo in yaml * Try surround csproj path with quotes to keep backslash * Convert target csproj path to target OS path * Fix performance directory issues * Fix SYSTEM_ACCESSTOKEN not being propagated * Add binlog output when building all scenario dotnet projects * Update scripts/run_performance_job.py Co-authored-by: Parker Bibus <pbibus@hotmail.com> --------- Co-authored-by: Parker Bibus <pbibus@hotmail.com>
2024-02-07 01:02:44 +03:00
queue: Ubuntu.2204.Arm64.Perf
osx-x64-ios-arm64:
jobs:
benchmark:
variables:
osGroup: osx
Consolidate yaml/script/proj logic into a single python script that is reusable across all contexts (#3806) * CI Python Pipeline * Fix yaml * More bug fixes * Ensure helix access token is propagated * Ensure variables are always defined in yaml * Fix env var parsing * Prevent passing in commit sha for performance ci runs * Ensure root payload dir is created * Fix Nuget.config copy code * More bug fixes for scenarios runs * Remove pip install and ensure payload dir has ending path segment * Also ensure dotnet dir has path segment * Some more fix attempts * Install python packages on osx, fix runtime flavour argument * Try pass perf command token via env * Fix PDN output file path being treated as a directory * Try fix scenarios directories * Install urllib last so that it doesn't get reinstalled by azure storage packages * Don't install packages at the user-level as it will be in a venv * Some more fixes * Fix more bugs * Delete the right directory * Disable node reuse and fix escaping for azure pipelines variables * Don't run apt-get on osx * Debugging the env var * Fix duplicate upload token * Ensure _BuildConfig is set * Default to not internal and fix pdn param * Disable prerequisite check if no prerequisites * Fix some more warnings * Fix not_in_lab value for performance CI runs * Ensure PerfLabGenericEventSourceLTTngProvider is build on ubuntu * Remember to run the command * Ensure updated global.json is copied to payload * Support runCategories and csproj in benchmark_jobs.yml * Fix typo in yaml * Try surround csproj path with quotes to keep backslash * Convert target csproj path to target OS path * Fix performance directory issues * Fix SYSTEM_ACCESSTOKEN not being propagated * Add binlog output when building all scenario dotnet projects * Update scripts/run_performance_job.py Co-authored-by: Parker Bibus <pbibus@hotmail.com> --------- Co-authored-by: Parker Bibus <pbibus@hotmail.com>
2024-02-07 01:02:44 +03:00
queue: OSX.13.Amd64.Iphone.Perf
alpine:
jobs:
benchmark:
variables:
osGroup: linux
queue: alpine.amd64.tiger.perf