Skip to content

Commit 9093cab

Browse files
committed
shared type for mangohud stats
1 parent 742a972 commit 9093cab

3 files changed

Lines changed: 34 additions & 30 deletions

File tree

src/metrics/large_scenes.rs

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -181,26 +181,24 @@ impl Metrics for LargeScene {
181181
let _ = reader.read_line(&mut tmp);
182182
let _ = reader.read_line(&mut tmp);
183183
let mut rdr = csv::ReaderBuilder::new().from_reader(reader);
184-
let (frame_times, cpu, gpu, vram, ram): (
185-
Vec<f32>,
186-
Vec<f32>,
187-
Vec<f32>,
188-
Vec<f32>,
189-
Vec<f32>,
190-
) = rdr
184+
let samples: Vec<super::MangohudSample> = rdr
191185
.records()
192186
.flatten()
193-
.map(|record| {
194-
(
195-
record.get(1).unwrap().parse::<f32>().unwrap_or_default(),
196-
record.get(2).unwrap().parse::<f32>().unwrap_or_default(),
197-
record.get(3).unwrap().parse::<f32>().unwrap_or_default(),
198-
record.get(8).unwrap().parse::<f32>().unwrap_or_default(),
199-
record.get(10).unwrap().parse::<f32>().unwrap_or_default(),
200-
)
187+
.map(|record| super::MangohudSample {
188+
frame_time: record.get(1).unwrap().parse::<f32>().unwrap_or_default(),
189+
cpu: record.get(2).unwrap().parse::<f32>().unwrap_or_default(),
190+
gpu: record.get(3).unwrap().parse::<f32>().unwrap_or_default(),
191+
vram: record.get(8).unwrap().parse::<f32>().unwrap_or_default(),
192+
ram: record.get(10).unwrap().parse::<f32>().unwrap_or_default(),
201193
})
202194
.collect();
203195

196+
let frame_times: Vec<f32> = samples.iter().map(|s| s.frame_time).collect();
197+
let cpu: Vec<f32> = samples.iter().map(|s| s.cpu).collect();
198+
let gpu: Vec<f32> = samples.iter().map(|s| s.gpu).collect();
199+
let ram: Vec<f32> = samples.iter().map(|s| s.ram).collect();
200+
let vram: Vec<f32> = samples.iter().map(|s| s.vram).collect();
201+
204202
for (values, name) in [
205203
(frame_times, "frame_time"),
206204
(cpu, "cpu_load"),

src/metrics/mod.rs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
pub(crate) struct MangohudSample {
2+
pub frame_time: f32,
3+
pub cpu: f32,
4+
pub gpu: f32,
5+
pub vram: f32,
6+
pub ram: f32,
7+
}
8+
19
pub mod benchmarks;
210
pub mod binary_size;
311
pub mod compile_time;

src/metrics/stress_tests.rs

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -163,26 +163,24 @@ impl Metrics for StressTest {
163163
let _ = reader.read_line(&mut tmp);
164164
let _ = reader.read_line(&mut tmp);
165165
let mut rdr = csv::ReaderBuilder::new().from_reader(reader);
166-
let (frame_times, cpu, gpu, vram, ram): (
167-
Vec<f32>,
168-
Vec<f32>,
169-
Vec<f32>,
170-
Vec<f32>,
171-
Vec<f32>,
172-
) = rdr
166+
let samples: Vec<super::MangohudSample> = rdr
173167
.records()
174168
.flatten()
175-
.map(|record| {
176-
(
177-
record.get(1).unwrap().parse::<f32>().unwrap_or_default(),
178-
record.get(2).unwrap().parse::<f32>().unwrap_or_default(),
179-
record.get(3).unwrap().parse::<f32>().unwrap_or_default(),
180-
record.get(8).unwrap().parse::<f32>().unwrap_or_default(),
181-
record.get(10).unwrap().parse::<f32>().unwrap_or_default(),
182-
)
169+
.map(|record| super::MangohudSample {
170+
frame_time: record.get(1).unwrap().parse::<f32>().unwrap_or_default(),
171+
cpu: record.get(2).unwrap().parse::<f32>().unwrap_or_default(),
172+
gpu: record.get(3).unwrap().parse::<f32>().unwrap_or_default(),
173+
vram: record.get(8).unwrap().parse::<f32>().unwrap_or_default(),
174+
ram: record.get(10).unwrap().parse::<f32>().unwrap_or_default(),
183175
})
184176
.collect();
185177

178+
let frame_times: Vec<f32> = samples.iter().map(|s| s.frame_time).collect();
179+
let cpu: Vec<f32> = samples.iter().map(|s| s.cpu).collect();
180+
let gpu: Vec<f32> = samples.iter().map(|s| s.gpu).collect();
181+
let ram: Vec<f32> = samples.iter().map(|s| s.ram).collect();
182+
let vram: Vec<f32> = samples.iter().map(|s| s.vram).collect();
183+
186184
for (values, name) in [
187185
(frame_times, "frame_time"),
188186
(cpu, "cpu_load"),

0 commit comments

Comments
 (0)