#![feature(test)] extern crate petgraph; extern crate test; use test::Bencher; use petgraph::algo::page_rank; #[allow(dead_code)] mod common; use common::directed_fan; #[cfg(feature = "rayon")] use petgraph::algo::page_rank::parallel_page_rank; #[cfg(feature = "rayon")] use rayon::prelude::*; #[bench] fn page_rank_bench(bench: &mut Bencher) { static NODE_COUNT: usize = 500; let g = directed_fan(NODE_COUNT); bench.iter(|| { let _ranks = page_rank(&g, 0.6_f64, 10); }); } #[bench] #[cfg(feature = "rayon")] fn par_page_rank_bench(bench: &mut Bencher) { static NODE_COUNT: usize = 2_000; let g = directed_fan(NODE_COUNT); bench.iter(|| { let _ranks = parallel_page_rank(&g, 0.6_f64, 100, None); }); }