Skip to content

Add JDK cache benchmark scenario - #11

Closed
brunoborges wants to merge 7 commits into
mainfrom
brunoborges-add-jdk-cache-benchmark
Closed

Add JDK cache benchmark scenario#11
brunoborges wants to merge 7 commits into
mainfrom
brunoborges-add-jdk-cache-benchmark

Conversation

@brunoborges

Copy link
Copy Markdown
Collaborator

No description provided.

brunoborges and others added 5 commits August 4, 2026 19:06
Compare pinned baseline and candidate setup-java commits across isolated cold and warm Microsoft JDK runs, with raw timing and cache-size artifacts.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Temporarily route the registered focused benchmark workflow through the reusable JDK cache benchmark for branch execution.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Remove the temporary branch-dispatch wiring now that JDK cache samples are complete, leaving the reusable benchmark harness intact for retention.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot AI lite review requested due to automatic review settings August 5, 2026 02:41

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new “JDK cache” benchmark scenario to measure the impact and storage characteristics of cache-jdk in actions/setup-java@main, alongside existing cache-focused scenarios.

Changes:

  • Introduces a new JDK cache workflow that runs baseline vs treatment arms (with/without cache-jdk) and reports results.
  • Adds a dedicated report generator (report-jdk-cache.mjs) plus tests.
  • Updates README scenario documentation to include JDK cache storage/behavior.
Show a summary per file
File Description
scripts/report-jdk-cache.mjs New report generator that parses job timing data, inspects cache entries, and emits Markdown/JSON/CSV summaries for the JDK cache scenario.
scripts/report-jdk-cache.test.mjs New unit tests for parsing, cache selection, cache-key derivation, and per-arm summarization logic.
README.md Documents the new “JDK cache” benchmark scenario and updates cache-storage scope description.
.github/workflows/jdk-cache.yml Adds the workflow that runs the benchmark, generates a report, and uploads artifacts.

Review details

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 4/4 changed files
  • Comments generated: 2
  • Review effort level: Lite

Comment on lines +29 to +32
.sort(
(a, b) =>
Date.parse(b.created_at ?? 0) - Date.parse(a.created_at ?? 0)
)[0] ?? null
Comment on lines +55 to +59
gh cache list --limit 10000 --json id,key \
--jq '.[] | select(.key | startswith("setup-java-jdk-")) | .id' |
while read -r cache_id; do
gh cache delete "$cache_id"
done
brunoborges and others added 2 commits August 4, 2026 22:44
Retain the stricter seed/read-only implementation while joining the prior benchmark history.\n\nCo-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@brunoborges

Copy link
Copy Markdown
Collaborator Author

Consolidated into #10, which now contains the same-ref seed/read-only design, reporting, tests, and documentation from this PR while retaining the earlier benchmark history.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants