Files
wehub-resource-sync a06f331eb8
CI / benchmark (push) Has been skipped
install-script / posix-syntax (push) Successful in 6m1s
CI / build-onnx (push) Failing after 6m43s
init-smoke / dry-run (push) Failing after 15m57s
security / govulncheck (push) Has been cancelled
security / trivy-fs (push) Has been cancelled
CI / test (1.26, ubuntu-latest) (push) Has been cancelled
Scorecard supply-chain security / Scorecard analysis (push) Has been cancelled
CI / test (1.26, macos-latest) (push) Has been cancelled
CI / build-windows (push) Has been cancelled
CI / lint (push) Has been cancelled
install-script / powershell-syntax (push) Has been cancelled
install-script / install (macos-14) (push) Has been cancelled
install-script / install (ubuntu-latest) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:33:42 +08:00

80 lines
2.4 KiB
YAML

name: ARM Benchmarks
on:
workflow_dispatch:
permissions:
contents: read
jobs:
bench-arm64:
name: Benchmark (ARM64)
runs-on: ubuntu-24.04-arm
timeout-minutes: 30
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
with:
go-version-file: go.mod
cache: true
- name: Run benchmarks
run: |
go test -bench=. -benchmem -count=3 -benchtime=2s -timeout=20m \
-run='^$' \
./internal/graph/ \
./internal/search/ \
./internal/parser/languages/ \
./internal/resolver/ \
./internal/query/ \
./internal/indexer/ \
./internal/analysis/ \
| tee bench-arm64.txt
- name: Upload results
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
with:
name: bench-arm64-${{ github.sha }}
path: bench-arm64.txt
retention-days: 90
- name: Compare with main (PR only)
if: github.event_name == 'pull_request'
run: |
go install golang.org/x/perf/cmd/benchstat@v0.0.0-20260409210113-8e83ce0f7b1c
# Download baseline from main branch artifact if available
echo "Benchmark results uploaded. Compare manually with benchstat."
bench-amd64:
name: Benchmark (AMD64 baseline)
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6
with:
go-version-file: go.mod
cache: true
- name: Run benchmarks
run: |
go test -bench=. -benchmem -count=3 -benchtime=2s -timeout=20m \
-run='^$' \
./internal/graph/ \
./internal/search/ \
./internal/parser/languages/ \
./internal/resolver/ \
./internal/query/ \
./internal/indexer/ \
./internal/analysis/ \
| tee bench-amd64.txt
- name: Upload results
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7
with:
name: bench-amd64-${{ github.sha }}
path: bench-amd64.txt
retention-days: 90