blob: b8163e0668376d7100c2997e3c0dda87d7c7352e [file] [log] [blame]
# Copyright 2021 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
# Pipeline steps for https://buildkite.com/iree/iree-benchmark
steps:
- label: "Build"
commands:
- "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake-android@sha256:0981a75325547d1bd5771290287cb8ef09181c4c127972d17132405394478ffb build_tools/cmake/build_android_benchmark.sh"
- "tar --exclude='*.tar.gz' --exclude='*.tgz' --exclude='*.mlir' -czvf benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz build-host/benchmark_suites"
- "tar -czvf iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz build-android/iree/tools/iree-benchmark-module build-android-trace/iree/tools/iree-benchmark-module"
if: "build.pull_request.id == null || (build.pull_request.labels includes 'buildkite:benchmark')"
agents:
- "queue=build"
env:
IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
artifact_paths:
- "benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz"
- "iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz"
- wait
- label: "Benchmark on Pixel 4 (snapdragon-855, adreno-640)"
commands:
- "git clean -f"
- "buildkite-agent artifact download --step Build benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz ./"
- "buildkite-agent artifact download --step Build iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz ./"
- "wget https://storage.googleapis.com/iree-shared-files/tracy-capture-058e8901.tgz"
- "tar -xzvf benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz"
- "tar -xzvf iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz"
- "tar -xzvf tracy-capture-058e8901.tgz"
- "python3 build_tools/benchmarks/run_benchmarks_on_android.py --normal_benchmark_tool=build-android/iree/tools/iree-benchmark-module --traced_benchmark_tool=build-android-trace/iree/tools/iree-benchmark-module --trace_capture_tool=tracy-capture -o benchmark-results-pixel-4-${BUILDKITE_BUILD_NUMBER}.json --capture_tarball=trace-captures-pixel-4-${BUILDKITE_BUILD_NUMBER}.tgz --verbose build-host/"
if: "build.pull_request.id == null || (build.pull_request.labels includes 'buildkite:benchmark')"
agents:
- "android-soc=snapdragon-855"
- "android-version=11"
- "queue=benchmark-android"
artifact_paths:
- "benchmark-results-pixel-4-${BUILDKITE_BUILD_NUMBER}.json"
- "trace-captures-pixel-4-${BUILDKITE_BUILD_NUMBER}.tgz"
timeout_in_minutes: "40"
- label: "Benchmark on Galaxy S20 (exynos-990, mali-g77)"
commands:
- "git clean -f"
- "buildkite-agent artifact download --step Build benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz ./"
- "buildkite-agent artifact download --step Build iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz ./"
- "wget https://storage.googleapis.com/iree-shared-files/tracy-capture-058e8901.tgz"
- "tar -xzvf benchmark-suites-${BUILDKITE_BUILD_NUMBER}.tgz"
- "tar -xzvf iree-android-tools-${BUILDKITE_BUILD_NUMBER}.tgz"
- "tar -xzvf tracy-capture-058e8901.tgz"
- "python3 build_tools/benchmarks/run_benchmarks_on_android.py --normal_benchmark_tool=build-android/iree/tools/iree-benchmark-module --traced_benchmark_tool=build-android-trace/iree/tools/iree-benchmark-module --trace_capture_tool=tracy-capture -o benchmark-results-galaxy-s20-${BUILDKITE_BUILD_NUMBER}.json --capture_tarball=trace-captures-galaxy-s20-${BUILDKITE_BUILD_NUMBER}.tgz --verbose build-host/"
if: "build.pull_request.id == null || (build.pull_request.labels includes 'buildkite:benchmark')"
agents:
- "android-soc=exynos-990"
- "android-version=11"
- "queue=benchmark-android"
artifact_paths:
- "benchmark-results-galaxy-s20-${BUILDKITE_BUILD_NUMBER}.json"
- "trace-captures-galaxy-s20-${BUILDKITE_BUILD_NUMBER}.tgz"
timeout_in_minutes: "40"
- wait
- label: "Comment benchmark results on pull request"
commands:
- "git clean -f"
- "buildkite-agent artifact download benchmark-results-*.json ./"
- "python3 build_tools/benchmarks/post_benchmarks_as_pr_comment.py --verbose --query-base benchmark-results-*.json"
key: "post-on-pr"
if: "build.pull_request.id != null && (build.pull_request.labels includes 'buildkite:benchmark')"
agents:
- "queue=report"
- label: "Push benchmark results to dashboard"
commands:
- "git clean -f"
- "buildkite-agent artifact download benchmark-results-*.json ./"
- "python3 build_tools/benchmarks/upload_benchmarks_to_dashboard.py --verbose benchmark-results-*.json"
key: "upload-to-dashboard"
branches: "main"
agents:
- "queue=report"