feat: JMH benchmarks added

This commit is contained in:
2026-04-14 02:40:30 +02:00
parent 3c3f3b4312
commit 85e33f2f60
8 changed files with 568 additions and 4 deletions

51
.github/workflows/benchmarks.yml vendored Normal file
View File

@@ -0,0 +1,51 @@
name: Benchmarks
on:
workflow_dispatch:
schedule:
- cron: '0 3 * * 1'
push:
branches:
- main
paths:
- 'src/main/**'
- 'src/jmh/**'
- 'build.gradle'
- 'gradle/**'
- 'gradlew'
- 'gradlew.bat'
- '.github/workflows/benchmarks.yml'
jobs:
jmh:
runs-on: ubuntu-latest
timeout-minutes: 30
permissions:
contents: read
steps:
- name: Check out sources
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '21'
cache: gradle
- name: Make Gradle executable
run: chmod +x ./gradlew
- name: Run JMH benchmarks
run: ./gradlew clean jmh --no-daemon
- name: Upload JMH reports
uses: actions/upload-artifact@v4
with:
name: jmh-reports
path: |
build/reports/jmh/**
build/results/jmh/**
if-no-files-found: warn