#![feature(test)] extern crate petgraph; extern crate test; use petgraph::algo::ford_fulkerson; use petgraph::prelude::{Graph, NodeIndex}; use test::Bencher; #[bench] fn ford_fulkerson_bench(bench: &mut Bencher) { static NODE_COUNT: usize = 1_000; let mut g: Graph = Graph::new(); let nodes: Vec> = (0..NODE_COUNT).map(|i| g.add_node(i)).collect(); for i in 0..NODE_COUNT - 1 { g.add_edge(nodes[i], nodes[i + 1], 1); } bench.iter(|| { let _flow = ford_fulkerson( &g, NodeIndex::from(0), NodeIndex::from(g.node_count() as u32 - 1), ); }); }