Skip to content

Run all-library benchmarks with any selected NMDEV JAR - #7

Merged
haksunli merged 2 commits into
mainfrom
fix/released-commons-benchmark-dependencies
Nov 4, 2026
Merged

haksunli merged 2 commits into
mainfrom
fix/released-commons-benchmark-dependencies

Conversation

@haksunli

@haksunli haksunli commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

A new NMDEV binary previously required editing launcher constants, origin checks and labels; fresh runs also failed when Apache removed timestamped Commons snapshots.

Application 1.3.0 accepts --nmdev-jar, validates and copies the exact binary under one runtime alias, derives version labels from embedded metadata, and records actual SHA-256 and original filename. It rejects changing the binary or application in an existing result directory before replacing its binary/provenance. All 1,260 cases and all eleven libraries (twelve variants) remain enabled, including both Commons implementations. Numerical measurement sources and other comparison-library pins are unchanged.

Check in benchmark/run-benchmark.ps1. It downloads a verified prebuilt runner plus a selected validated NMDEV release (default 1.2.10), caches them, and runs the full suite without Maven, source edits or repeated preparation. -NmdevJar selects a custom local build; -NmdevVersion selects a future published release. The existing application workflow publishes the prebuilt runner and SHA256SUMS only after Windows and Linux smoke, selection, provenance and resume checks pass on main.

Pin four Commons Math modules to released 4.0-beta1 binaries with verified hashes and matching origin labels. This comparator differs from historical snapshots and is explicitly labelled. Include direct-build alias consistency and usage documentation.

Validation: 13 launcher/unit tests passed locally on JDK17, including arbitrary filenames, exact-byte copy, embedded versions, invalid input, classpath shadowing and rejecting mixed-binary resumes. Existing Commons array/block adapters passed 78 correctness cases, each repeated twice, against released dependencies. Windows/Linux application CI validates all libraries, local input selection, actual provenance and retained forks.

@haksunli
haksunli marked this pull request as draft November 4, 2026 02:58
@haksunli haksunli changed the title Fix benchmark downloads with released Commons Math dependencies Run all-library benchmarks with any selected NMDEV JAR Nov 4, 2026
@haksunli
haksunli marked this pull request as ready for review November 4, 2026 03:06
@haksunli
haksunli merged commit 1ad1d00 into main Nov 4, 2026
7 checks passed
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.

1 participant