1use clap::Parser;
2use eyre::Result;
3use openvm_benchmarks_prove::util::BenchmarkCli;
4use openvm_sdk::{
5 config::{SdkVmBuilder, SdkVmConfig},
6 StdIn,
7};
8use openvm_stark_sdk::bench::run_with_metric_collection;
9
10fn main() -> Result<()> {
11 let args = BenchmarkCli::parse();
12
13 let config =
14 SdkVmConfig::from_toml(include_str!("../../../guest/fibonacci/openvm.toml"))?.app_vm_config;
15 let elf = args.build_bench_program("fibonacci", &config, None)?;
16
17 run_with_metric_collection("OUTPUT_PATH", || -> Result<()> {
18 let n = 100_000u64;
19 let mut stdin = StdIn::default();
20 stdin.write(&n);
21 args.bench_from_exe::<SdkVmBuilder, _>("fibonacci_program", config, elf, stdin)
22 })
23}