From eb3b48558051698f1b547d743cb607d26e848bef Mon Sep 17 00:00:00 2001 From: Mike Harder Date: Thu, 9 Feb 2023 21:17:16 -0800 Subject: [PATCH] [Perf] Refactor tests.yml into one file per package per language (#28462) --- eng/pipelines/templates/jobs/perf.yml | 10 +++--- sdk/eventhub/perf-tests.yml | 28 +++++++++++++++++ sdk/eventhub/perf.yml | 6 +++- .../azure-keyvault-secrets/perf-tests.yml | 23 ++++++++++++++ sdk/storage/azure-storage-blob/perf-tests.yml | 31 +++++++++++++++++++ sdk/storage/azure-storage-blob/perf.yml | 6 +++- .../perf-tests.yml | 24 ++++++++++++++ .../azure-storage-file-datalake/perf.yml | 6 +++- .../azure-storage-file-share/perf-tests.yml | 24 ++++++++++++++ sdk/storage/azure-storage-file-share/perf.yml | 6 +++- 10 files changed, 155 insertions(+), 9 deletions(-) create mode 100644 sdk/eventhub/perf-tests.yml create mode 100644 sdk/keyvault/azure-keyvault-secrets/perf-tests.yml create mode 100644 sdk/storage/azure-storage-blob/perf-tests.yml create mode 100644 sdk/storage/azure-storage-file-datalake/perf-tests.yml create mode 100644 sdk/storage/azure-storage-file-share/perf-tests.yml diff --git a/eng/pipelines/templates/jobs/perf.yml b/eng/pipelines/templates/jobs/perf.yml index 089e4203cc7d..662930ea3d05 100644 --- a/eng/pipelines/templates/jobs/perf.yml +++ b/eng/pipelines/templates/jobs/perf.yml @@ -1,8 +1,8 @@ parameters: -- name: ServiceDirectory +- name: LanguageVersion type: string - default: '' -- name: Services + default: '3.11' +- name: ServiceDirectory type: string default: '' - name: PackageVersions @@ -30,15 +30,15 @@ extends: Variables: - template: /eng/pipelines/templates/variables/globals.yml - name: PythonVersion - value: '3.11' + value: ${{ parameters.LanguageVersion }} Language: Python + LanguageVersion: ${{ parameters.LanguageVersion }} InstallLanguageSteps: - task: UsePythonVersion@0 displayName: "Use Python $(PythonVersion)" inputs: versionSpec: $(PythonVersion) ServiceDirectory: ${{ parameters.ServiceDirectory }} - Services: ${{ parameters.Services }} PackageVersions: ${{ parameters.PackageVersions }} Tests: ${{ parameters.Tests }} Arguments: ${{ parameters.Arguments }} diff --git a/sdk/eventhub/perf-tests.yml b/sdk/eventhub/perf-tests.yml new file mode 100644 index 000000000000..82c86f7f4313 --- /dev/null +++ b/sdk/eventhub/perf-tests.yml @@ -0,0 +1,28 @@ +Service: eventhubs + +Project: sdk/eventhub/azure-eventhub + +PrimaryPackage: azure-eventhub + +PackageVersions: +- azure-core: 1.26.1 + azure-eventhub: 5.11.1 +- azure-core: source + azure-eventhub: source + +Tests: +- Test: send-event-batch + Class: SendEventBatchTest + Arguments: + - --event-size 1024 --batch-size 100 --parallel 64 + - --event-size 1024 --batch-size 100 --parallel 64 --uamqp-transport + - --event-size 1024 --batch-size 100 --parallel 64 --transport-type 1 + - --event-size 1024 --batch-size 100 --parallel 64 --transport-type 1 --uamqp-transport + +- Test: process-events-batch + Class: ProcessEventsBatchTest + Arguments: + - --event-size 1024 --max-batch-size 100 --preload 1000000 + - --event-size 1024 --max-batch-size 100 --preload 1000000 --uamqp-transport + - --event-size 1024 --max-batch-size 100 --preload 1000000 --transport-type 1 + - --event-size 1024 --max-batch-size 100 --preload 1000000 --transport-type 1 --uamqp-transport diff --git a/sdk/eventhub/perf.yml b/sdk/eventhub/perf.yml index bae1fb6cff1a..7f1567d9e56a 100644 --- a/sdk/eventhub/perf.yml +++ b/sdk/eventhub/perf.yml @@ -1,4 +1,8 @@ parameters: +- name: LanguageVersion + displayName: LanguageVersion (3.7, 3.8, 3.9, 3.10, 3.11) + type: string + default: '3.11' - name: PackageVersions displayName: PackageVersions (regex of package versions to run) type: string @@ -24,7 +28,7 @@ extends: template: /eng/pipelines/templates/jobs/perf.yml parameters: ServiceDirectory: eventhub - Services: "^(eventhubs)$" + LanguageVersion: ${{ parameters.LanguageVersion }} PackageVersions: ${{ parameters.PackageVersions }} Tests: ${{ parameters.Tests }} Arguments: ${{ parameters.Arguments }} diff --git a/sdk/keyvault/azure-keyvault-secrets/perf-tests.yml b/sdk/keyvault/azure-keyvault-secrets/perf-tests.yml new file mode 100644 index 000000000000..104d142759c1 --- /dev/null +++ b/sdk/keyvault/azure-keyvault-secrets/perf-tests.yml @@ -0,0 +1,23 @@ +Service: keyvault-secrets + +Project: sdk/keyvault/azure-keyvault-secrets + +PrimaryPackage: azure-keyvault-secrets + +PackageVersions: +- azure-core: 1.15.0 + azure-keyvault-secrets: 4.3.0 +- azure-core: source + azure-keyvault-secrets: source + +Tests: +- Test: get-secret + Class: GetSecretTest + Arguments: + - --parallel 64 + +- Test: list-secrets + Class: ListSecretsTest + Arguments: + - --count 5 --parallel 64 + - --count 500 --parallel 32 diff --git a/sdk/storage/azure-storage-blob/perf-tests.yml b/sdk/storage/azure-storage-blob/perf-tests.yml new file mode 100644 index 000000000000..5fd94d5883a5 --- /dev/null +++ b/sdk/storage/azure-storage-blob/perf-tests.yml @@ -0,0 +1,31 @@ +Service: storage-blob + +Project: sdk/storage/azure-storage-blob + +PrimaryPackage: azure-storage-blob + +PackageVersions: +- azure-core: 1.26.1 + azure-storage-blob: 12.14.1 +- azure-core: source + azure-storage-blob: source + +Tests: +- Test: download + Class: DownloadTest + Arguments: &sizes + - --size 10240 --parallel 64 + - --size 10485760 --parallel 32 + - --size 1073741824 --parallel 1 --warmup 60 --duration 60 + - --size 1073741824 --parallel 8 --warmup 60 --duration 60 + +- Test: upload + Class: UploadTest + Arguments: *sizes + +- Test: list-blobs + Class: ListBlobsTest + Arguments: + - --count 5 --parallel 64 + - --count 500 --parallel 32 + - --count 50000 --parallel 32 --warmup 60 --duration 60 diff --git a/sdk/storage/azure-storage-blob/perf.yml b/sdk/storage/azure-storage-blob/perf.yml index 6c59ad772b00..d9587a36a73f 100644 --- a/sdk/storage/azure-storage-blob/perf.yml +++ b/sdk/storage/azure-storage-blob/perf.yml @@ -1,4 +1,8 @@ parameters: +- name: LanguageVersion + displayName: LanguageVersion (3.7, 3.8, 3.9, 3.10, 3.11) + type: string + default: '3.11' - name: PackageVersions displayName: PackageVersions (regex of package versions to run) type: string @@ -24,7 +28,7 @@ extends: template: /eng/pipelines/templates/jobs/perf.yml parameters: ServiceDirectory: storage/azure-storage-blob - Services: "^storage-blob$" + LanguageVersion: ${{ parameters.LanguageVersion }} PackageVersions: ${{ parameters.PackageVersions }} Tests: ${{ parameters.Tests }} Arguments: ${{ parameters.Arguments }} diff --git a/sdk/storage/azure-storage-file-datalake/perf-tests.yml b/sdk/storage/azure-storage-file-datalake/perf-tests.yml new file mode 100644 index 000000000000..b6325df7666a --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/perf-tests.yml @@ -0,0 +1,24 @@ +Service: storage-file-datalake + +Project: sdk/storage/azure-storage-file-datalake + +PrimaryPackage: azure-storage-file-datalake + +PackageVersions: +- azure-core: 1.26.1 + azure-storage-file-datalake: 12.9.1 +- azure-core: source + azure-storage-file-datalake: source + +Tests: +- Test: download + Class: DownloadTest + Arguments: &sizes + - --size 10240 --parallel 64 + - --size 10485760 --parallel 32 + - --size 1073741824 --parallel 1 --warmup 60 --duration 60 + - --size 1073741824 --parallel 8 --warmup 60 --duration 60 + +- Test: upload + Class: UploadTest + Arguments: *sizes diff --git a/sdk/storage/azure-storage-file-datalake/perf.yml b/sdk/storage/azure-storage-file-datalake/perf.yml index 1993d7769d6d..10da1756f1a8 100644 --- a/sdk/storage/azure-storage-file-datalake/perf.yml +++ b/sdk/storage/azure-storage-file-datalake/perf.yml @@ -1,4 +1,8 @@ parameters: +- name: LanguageVersion + displayName: LanguageVersion (3.7, 3.8, 3.9, 3.10, 3.11) + type: string + default: '3.11' - name: PackageVersions displayName: PackageVersions (regex of package versions to run) type: string @@ -24,7 +28,7 @@ extends: template: /eng/pipelines/templates/jobs/perf.yml parameters: ServiceDirectory: storage/azure-storage-file-datalake - Services: "^storage-file-datalake$" + LanguageVersion: ${{ parameters.LanguageVersion }} PackageVersions: ${{ parameters.PackageVersions }} Tests: ${{ parameters.Tests }} Arguments: ${{ parameters.Arguments }} diff --git a/sdk/storage/azure-storage-file-share/perf-tests.yml b/sdk/storage/azure-storage-file-share/perf-tests.yml new file mode 100644 index 000000000000..3622701d56c1 --- /dev/null +++ b/sdk/storage/azure-storage-file-share/perf-tests.yml @@ -0,0 +1,24 @@ +Service: storage-file-share + +Project: sdk/storage/azure-storage-file-share + +PrimaryPackage: azure-storage-file-share + +PackageVersions: +- azure-core: 1.26.1 + azure-storage-file-share: 12.10.1 +- azure-core: source + azure-storage-file-share: source + +Tests: +- Test: download + Class: DownloadTest + Arguments: &sizes + - --size 10240 --parallel 64 + - --size 10485760 --parallel 32 + - --size 1073741824 --parallel 1 --warmup 60 --duration 60 + - --size 1073741824 --parallel 8 --warmup 60 --duration 60 + +- Test: upload + Class: UploadTest + Arguments: *sizes diff --git a/sdk/storage/azure-storage-file-share/perf.yml b/sdk/storage/azure-storage-file-share/perf.yml index 03d90933f08f..b7e90d50ec27 100644 --- a/sdk/storage/azure-storage-file-share/perf.yml +++ b/sdk/storage/azure-storage-file-share/perf.yml @@ -1,4 +1,8 @@ parameters: +- name: LanguageVersion + displayName: LanguageVersion (3.7, 3.8, 3.9, 3.10, 3.11) + type: string + default: '3.11' - name: PackageVersions displayName: PackageVersions (regex of package versions to run) type: string @@ -24,7 +28,7 @@ extends: template: /eng/pipelines/templates/jobs/perf.yml parameters: ServiceDirectory: storage/azure-storage-file-share - Services: "^storage-file-share$" + LanguageVersion: ${{ parameters.LanguageVersion }} PackageVersions: ${{ parameters.PackageVersions }} Tests: ${{ parameters.Tests }} Arguments: ${{ parameters.Arguments }}