diff --git a/src/main.rs b/src/main.rs index 4ae489c..ce89a33 100644 --- a/src/main.rs +++ b/src/main.rs @@ -12,13 +12,22 @@ fn main() -> Result<(), Box> { let mut failed_corpus_v1 = 0; let mut success_corpus_v1 = 0; + let mut patch_vm_total_ns: u128 = 0; + let mut sched_vm_total_ns: u128 = 0; + for directory in std::fs::read_dir(dir)? { let path = directory?.path(); // println!("{}", path.display()); let data = std::fs::read(path.clone())?; + let patch_start = std::time::Instant::now(); let r_patch = schedfuzz::patch::run(&data, 0).map_err(|e| schedfuzz::normalize_error(format!("{:?}", e))); + patch_vm_total_ns += patch_start.elapsed().as_nanos(); + + let sched_start = std::time::Instant::now(); let r_sched = schedfuzz::sched::run(&data, 0).map_err(|e| schedfuzz::normalize_error(format!("{:?}", e))); + sched_vm_total_ns += sched_start.elapsed().as_nanos(); + assert_eq!(r_patch, r_sched, "file path : {}", path.display()); match r_patch { Ok(_) => { @@ -29,8 +38,14 @@ fn main() -> Result<(), Box> { } } + let patch_start = std::time::Instant::now(); let r_patch = schedfuzz::patch::run(&data, 2).map_err(|e| schedfuzz::normalize_error(format!("{:?}", e))); + patch_vm_total_ns += patch_start.elapsed().as_nanos(); + + let sched_start = std::time::Instant::now(); let r_sched = schedfuzz::sched::run(&data, 2).map_err(|e| schedfuzz::normalize_error(format!("{:?}", e))); + sched_vm_total_ns += sched_start.elapsed().as_nanos(); + assert_eq!(r_patch, r_sched, "file path : {}", path.display()); match r_patch { Ok(_) => { @@ -43,6 +58,7 @@ fn main() -> Result<(), Box> { } println!("version data succ:{},failed:{}", success_corpus_v0, failed_corpus_v0); println!("version data1 succ:{},failed:{}", success_corpus_v1, failed_corpus_v1); + println!("patch_vm_total={}ms sched_vm_total={}ms", patch_vm_total_ns / 1_000_000, sched_vm_total_ns / 1_000_000); }; Ok(())