diff options
| author | Dennis Kobert <dennis@kobert.dev> | 2025-03-10 21:36:30 +0100 |
|---|---|---|
| committer | Dennis Kobert <dennis@kobert.dev> | 2025-03-25 15:52:04 +0100 |
| commit | 776dee32aca73ded5c0720afbe25ef2aae7b67f3 (patch) | |
| tree | 1e4c8b9bde5c944869134e0ed751315efe09198a /src/energy | |
| parent | c2d63b96cbbd3be653fa0023fadae7df3babaf32 (diff) | |
Implement benchmarking
Diffstat (limited to 'src/energy')
| -rw-r--r-- | src/energy/trackers/perf.rs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/energy/trackers/perf.rs b/src/energy/trackers/perf.rs index 7c26bdb..17bc693 100644 --- a/src/energy/trackers/perf.rs +++ b/src/energy/trackers/perf.rs @@ -24,14 +24,22 @@ static EVENT_TYPES: &[(f32, Event)] = &[ impl Estimator for PerfEstimator { fn start_trace(&mut self, pid: u64) { - let Ok(mut group) = Group::new() else { + let Ok(mut group) = Group::new_with_pid_and_cpu(-1, 0) else { eprintln!("Failed to create performance counter group for PID {}", pid); return; }; let counters: Result<Vec<_>, _> = EVENT_TYPES .iter() - .map(|(_, kind)| Builder::new().group(&mut group).kind(kind.clone()).build()) + .map(|(_, kind)| { + Builder::new() + .group(&mut group) + .kind(kind.clone()) + // .observe_pid(pid as i32) + .observe_pid(-1) + .one_cpu(0) + .build() + }) .collect(); let counters = match counters { |
