Skip to content

Run benchmarks

Run benchmarks #16

Workflow file for this run

name: Run benchmarks
on:
workflow_dispatch:
jobs:
benchmark:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'adopt'
cache: gradle
# Build system for C
- name: Setup CMake
uses: jwlawson/actions-setup-cmake@v2.0
# CMake generator
- name: Setup ninja-build
uses: seanmiddleditch/gha-setup-ninja@master
# Cross-compile native libraries
- name: Setup Zig
uses: goto-bus-stop/setup-zig@v2
# Run js/ts scripts
- name: Set Bun.js
uses: oven-sh/setup-bun@v2
with:
bun-version: latest
- name: Install multiplatform JDKs
run: |
bun scripts/setupMultiplatformJdks.ts
printf "Exports:\n$(cat ~/java-home-vars-github.sh)"
source ~/java-home-vars-github.sh
- uses: gradle/actions/setup-gradle@v3
- name: Grant execute permission for scripts
run: |
chmod +x gradlew
chmod +x quickjs/native/cmake/zig-ar.sh
chmod +x quickjs/native/cmake/zig-ranlib.sh
- name: Run benchmarks
run: bun scripts/createBenchmarkResult.ts
- name: Commit results
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: Update benchmark results
file_pattern: 'benchmark/README.md'