#cycle #cpu #linux #api-bindings #ffi-bind

cpu_cycles_reader

perf_event_read package specialized for reading cpu cycles

21 releases (3 stable)

1.2.0 Aug 5, 2024
1.0.1 Feb 9, 2024
0.2.0 Jan 14, 2024
0.1.41 Jul 23, 2023

#1 in #cycles

WTFPL license

16KB
329 lines

This is only specialized for reading CpuCycles, not a complete package of perf_event_read

Permission requirements ⚠ : Make sure the program has ROOT permissions


lib.rs:

This is only for reading CpuCycles specialization, not a complete package of perf_event_read

Example:

use std::{fs, time::{Duration, Instant}, thread};
use cpu_cycles_reader::{Cycles, CyclesReader, CyclesInstant};

let reader = CyclesReader::new().unwrap();
let record_1 = reader.instant(0).unwrap();

thread::sleep(Duration::from_secs(1));

let record_2 = reader.instant(0).unwrap();
let cycles = record_2 - record_1;

println!("{cycles}");

Dependencies

~0.3–1.1MB
~26K SLoC