@@ -5,6 +5,7 @@ use std::path::PathBuf;
5
5
// use ere_pico::{ErePico, PICO_TARGET};
6
6
7
7
use benchmark_runner:: { Action , run_benchmark_ere} ;
8
+ use ere_openvm:: { EreOpenVM , OPENVM_TARGET } ;
8
9
use ere_risczero:: { EreRisc0 , RV32_IM_RISCZERO_ZKVM_ELF } ;
9
10
use ere_sp1:: { EreSP1 , RV32_IM_SUCCINCT_ZKVM_ELF } ;
10
11
@@ -22,13 +23,17 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
22
23
let action = Action :: Execute ;
23
24
run_benchmark_ere ( "risc0" , risc0_zkvm, action) ?;
24
25
26
+ let resource = ProverResourceType :: Cpu ;
27
+ let openvm_zkvm = new_openvm_zkvm ( resource) ?;
28
+ let action = Action :: Execute ;
29
+ run_benchmark_ere ( "openvm" , openvm_zkvm, action) ?;
30
+
25
31
// TODO: Symbol conflict with Risc0, See #42
26
32
// let resource = ProverResourceType::Cpu;
27
33
// let pico_zkvm = new_pico_zkvm(resource)?;
28
34
// let action = Action::Execute;
29
35
// run_benchmark_ere("pico", pico_zkvm, action)?;
30
36
31
- // TODO: Add more backends
32
37
Ok ( ( ) )
33
38
}
34
39
@@ -44,6 +49,13 @@ fn new_risczero_zkvm(
44
49
let program = RV32_IM_RISCZERO_ZKVM_ELF :: compile ( & PathBuf :: from ( guest_dir) ) ?;
45
50
Ok ( EreRisc0 :: new ( program, prover_resource) )
46
51
}
52
+ fn new_openvm_zkvm (
53
+ prover_resource : ProverResourceType ,
54
+ ) -> Result < EreOpenVM , Box < dyn std:: error:: Error > > {
55
+ let guest_dir = concat ! ( env!( "CARGO_WORKSPACE_DIR" ) , "ere-guests/openvm" ) ;
56
+ let program = OPENVM_TARGET :: compile ( & PathBuf :: from ( guest_dir) ) ?;
57
+ Ok ( EreOpenVM :: new ( program, prover_resource) )
58
+ }
47
59
// fn new_pico_zkvm(
48
60
// prover_resource: ProverResourceType,
49
61
// ) -> Result<ErePico, Box<dyn std::error::Error>> {
0 commit comments