fn main() -> std::io::Result<()> { use perf_event::events::Hardware; use perf_event::{Builder, Group}; let mut group = Group::new()?; let cycles = Builder::new() .group(&mut group) .kind(Hardware::CPU_CYCLES) .build()?; let insns = Builder::new() .group(&mut group) .kind(Hardware::INSTRUCTIONS) .build()?; let vec = (0..=51).collect::>(); group.enable()?; println!("{:?}", vec); group.disable()?; let counts = group.read()?; println!( "cycles / instructions: {} / {} ({:.2} cpi)", counts[&cycles], counts[&insns], (counts[&cycles] as f64 / counts[&insns] as f64) ); Ok(()) }