bench #139
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: bench | |
| on: | |
| schedule: | |
| # Nightly at 04:00 UTC. Runs the small subset against the frozen | |
| # baseline_v0124.json and fails on a >10% regression. | |
| - cron: "0 4 * * *" | |
| # PR trigger temporarily disabled during spec 1714 Phase 5 Bucket B. | |
| # Migrating opcodes from the handwritten panel onto the generated | |
| # dispatch adds per-op overhead until the generated path is | |
| # optimized. Re-enable after Bucket B closes and the baseline is | |
| # refreshed. | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: bench-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| small-subset: | |
| name: small-subset baseline gate | |
| runs-on: macos-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| with: | |
| persist-credentials: false | |
| - name: Set up Go | |
| uses: actions/setup-go@v6 | |
| with: | |
| go-version-file: go.mod | |
| check-latest: true | |
| - name: Set up Python 3.14 | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.14" | |
| - name: Build gopy | |
| run: make build LDFLAGS='-s -w' | |
| - name: Run small subset | |
| env: | |
| CPYTHON_BIN: python3.14 | |
| # PyPy is optional in CI; the script writes a placeholder if | |
| # it's missing, so the gate still runs against cpython + gopy. | |
| PYPY_BIN: /dev/null | |
| TARGET_WALL_MS: "30000" | |
| BASELINE_TOLERANCE: "0.10" | |
| run: bench/run_small.sh | |
| - name: Upload bench artifacts | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: bench-results | |
| path: | | |
| bench/raw_cpython314.json | |
| bench/raw_pypy311.json | |
| bench/raw_gopy.json | |
| bench/results_small.md | |
| retention-days: 14 |