///|
fn parse_iterations(raw : String) -> Int {
@strconv.from_str(raw[:]) catch {
_ => 120
}
}
///|
fn configured_iterations() -> Int {
match @env.get_env_var("VRP_BENCHMARK_ITERATIONS") {
None => 120
Some(raw) => {
let parsed = parse_iterations(raw)
parsed.max(1).min(5_000)
}
}
}
///|
fn main raise {
let benchmark_case = @bench.a_n32_k5_case()
let config = @core.SolveConfig::default().tune(
iterations=configured_iterations(),
max_destroy=8,
)
let started = @env.now()
let result = @bench.run_case(benchmark_case, config)
let elapsed = @env.now() - started
println(@bench.result_text(result))
println("Elapsed ms: \{elapsed}")
}