Moves the problem definitions, the ~88 algorithm runners, and the table-printing presentation out of examples/compare.rs into examples/_shared/compare_workload.rs (path-included as `mod workload`). examples/compare.rs is now a thin shim that calls `workload::run_all()`. This makes the exact `compare` workload reusable: an upcoming gungraun profiling benchmark (benches/compare_profile.rs) path-includes the same module and drives the runner functions directly, so it exercises identical code with no duplication. `examples/_shared/` has no `main.rs`, so cargo does not auto-discover it as an example. Pure reorganization: `cargo run --release --example compare` produces identical output (every quality metric, front size, and row order unchanged; only the non-deterministic wall-clock `ms` column jitters). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
21 lines
611 B
Rust
21 lines
611 B
Rust
//! Multi-seed algorithm comparison harness.
|
|
//!
|
|
//! Runs every applicable optimizer on each test problem across N seeds and
|
|
//! prints aggregate quality metrics.
|
|
//!
|
|
//! ```bash
|
|
//! cargo run --release --example compare
|
|
//! ```
|
|
//!
|
|
//! The problem definitions, the ~88 algorithm runners, and the
|
|
//! table-printing presentation all live in the `compare_workload` module
|
|
//! so the gungraun profiling benchmark (`benches/compare_profile.rs`) can
|
|
//! reuse the exact same workload. This file is just the entry point.
|
|
|
|
#[path = "_shared/compare_workload.rs"]
|
|
mod workload;
|
|
|
|
fn main() {
|
|
workload::run_all();
|
|
}
|