Skip to content

Commit b877c5a

Browse files
committed
fix: use proper architecture-specific file in mock sensor
1 parent 2178ed3 commit b877c5a

File tree

3 files changed

+90
-1
lines changed

3 files changed

+90
-1
lines changed
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
11
package net.laprun.sustainability.power;
22

3+
import io.quarkus.logging.Log;
34
import io.quarkus.test.Mock;
45
import net.laprun.sustainability.power.sensors.macos.powermetrics.ResourceMacOSPowermetricsSensor;
56

67
@Mock
78
@SuppressWarnings("unused")
89
public class MockPowerSensor extends ResourceMacOSPowermetricsSensor {
10+
static {
11+
Log.info("MockPowerSensor: " + System.getProperty("os.arch").toLowerCase());
12+
}
913
public MockPowerSensor() {
10-
super("sonoma-m1max.txt");
14+
super(System.getProperty("os.name").toLowerCase().contains("linux") ? "sonoma-intel.txt" : "sonoma-m1max.txt");
1115
}
1216
}

server/src/test/java/net/laprun/sustainability/power/PowerResourceTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import org.junit.jupiter.api.condition.EnabledOnOs;
2323
import org.junit.jupiter.api.condition.OS;
2424

25+
import io.quarkus.logging.Log;
2526
import io.quarkus.test.common.http.TestHTTPResource;
2627
import io.quarkus.test.junit.QuarkusTest;
2728
import net.laprun.sustainability.power.sensors.SamplingMeasurer;
@@ -105,6 +106,8 @@ public void testMacOSIntelMetadataEndpoint() {
105106
.then()
106107
.statusCode(200)
107108
.extract().body().as(SensorMetadata.class);
109+
Log.infof("Metadata: %s", metadata);
110+
108111
assertEquals(2, metadata.componentCardinality());
109112
assertTrue(metadata.documentation().contains("powermetrics"));
110113
assertTrue(metadata.components().keySet().containsAll(Set.of("Package", "cpuShare")));
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
Machine model: MacBookPro15,1
2+
SMC version: Unknown
3+
EFI version: 2020.1.0
4+
OS version: 23C71
5+
Boot arguments:
6+
Boot time: Thu Dec 21 08:07:54 2023
7+
8+
*** Running tasks ***
9+
10+
Name ID CPU ms/s samp ms/s User% Deadlines (<2 ms, 2-5 ms) Wakeups (Intr, Pkg idle) GPU ms/s
11+
WindowServer 391 281.98 283.25 82.97 1.97 0.00 428.87 8.85 0.00
12+
mdworker_shared 29420 183.26 112.83 65.49 0.00 0.00 0.00 0.00 0.00
13+
powermetrics 29419 23.78 23.88 6.05 0.00 0.00 0.98 0.00 0.00
14+
ALL_TASKS -2 1222.65 1222.65 65.70 1161.97 15.81 2875.29 132.40 0.00
15+
16+
*** Sampled system activity (Mon Jan 15 18:21:32 2024 +0100) (1002.38ms elapsed) ***
17+
18+
19+
**** Processor usage ****
20+
21+
Intel energy model derived package power (CPUs+GT+SA): 8.53W
22+
23+
LLC flushed residency: 26.3%
24+
25+
System Average frequency as fraction of nominal: 96.10% (2498.72 Mhz)
26+
Package 0 C-state residency: 32.95% (C2: 24.47% C3: 8.48% C6: 0.00% C7: 0.00% C8: 0.00% C9: 0.00% C10: 0.00% )
27+
28+
Performance Limited Due to:
29+
CPU LIMIT MAX_TURBO_LIMIT
30+
CPU LIMIT TURBO_ATTENUATION
31+
CPU/GPU Overlap: 6.67%
32+
Cores Active: 57.32%
33+
GPU Active: 8.24%
34+
Avg Num of Cores Active: 1.17
35+
36+
Core 0 C-state residency: 56.98% (C3: 0.77% C6: 0.00% C7: 56.21% )
37+
38+
CPU 0 duty cycles/s: active/idle [< 16 us: 525.75/399.05] [< 32 us: 362.14/40.90] [< 64 us: 320.24/389.07] [< 128 us: 425.99/318.24] [< 256 us: 185.56/189.55] [< 512 us: 113.73/264.37] [< 1024 us: 52.87/228.46] [< 2048 us: 28.93/190.55] [< 4096 us: 20.95/23.94] [< 8192 us: 6.98/1.00] [< 16384 us: 1.00/0.00] [< 32768 us: 0.00/0.00]
39+
CPU Average frequency as fraction of nominal: 92.36% (2401.36 Mhz)
40+
41+
CPU 1 duty cycles/s: active/idle [< 16 us: 2227.70/424.99] [< 32 us: 21.95/207.51] [< 64 us: 11.97/274.35] [< 128 us: 6.98/318.24] [< 256 us: 0.00/255.39] [< 512 us: 0.00/239.43] [< 1024 us: 0.00/209.50] [< 2048 us: 0.00/243.42] [< 4096 us: 0.00/78.81] [< 8192 us: 0.00/14.96] [< 16384 us: 0.00/2.00] [< 32768 us: 0.00/0.00]
42+
CPU Average frequency as fraction of nominal: 92.70% (2410.30 Mhz)
43+
44+
Core 1 C-state residency: 69.86% (C3: 3.76% C6: 0.00% C7: 66.10% )
45+
46+
CPU 2 duty cycles/s: active/idle [< 16 us: 896.87/214.49] [< 32 us: 185.56/23.94] [< 64 us: 279.34/363.14] [< 128 us: 228.46/413.02] [< 256 us: 151.64/227.46] [< 512 us: 93.78/206.51] [< 1024 us: 34.92/212.49] [< 2048 us: 14.96/170.59] [< 4096 us: 12.97/63.85] [< 8192 us: 5.99/7.98] [< 16384 us: 0.00/0.00] [< 32768 us: 0.00/0.00]
47+
CPU Average frequency as fraction of nominal: 97.43% (2533.19 Mhz)
48+
49+
CPU 3 duty cycles/s: active/idle [< 16 us: 1571.26/187.55] [< 32 us: 36.91/107.74] [< 64 us: 21.95/204.51] [< 128 us: 9.98/237.43] [< 256 us: 2.00/226.46] [< 512 us: 0.00/214.49] [< 1024 us: 0.00/169.60] [< 2048 us: 0.00/154.63] [< 4096 us: 0.00/105.75] [< 8192 us: 0.00/31.92] [< 16384 us: 0.00/2.00] [< 32768 us: 0.00/0.00]
50+
CPU Average frequency as fraction of nominal: 92.97% (2417.26 Mhz)
51+
52+
Core 2 C-state residency: 72.83% (C3: 9.76% C6: 0.00% C7: 63.08% )
53+
54+
CPU 4 duty cycles/s: active/idle [< 16 us: 1075.44/409.03] [< 32 us: 245.42/35.91] [< 64 us: 254.39/378.10] [< 128 us: 206.51/374.11] [< 256 us: 132.68/240.43] [< 512 us: 86.79/196.53] [< 1024 us: 40.90/166.60] [< 2048 us: 11.97/181.57] [< 4096 us: 6.98/62.85] [< 8192 us: 2.99/18.95] [< 16384 us: 0.00/0.00] [< 32768 us: 0.00/0.00]
55+
CPU Average frequency as fraction of nominal: 95.96% (2495.08 Mhz)
56+
57+
CPU 5 duty cycles/s: active/idle [< 16 us: 2164.85/478.86] [< 32 us: 18.95/251.40] [< 64 us: 21.95/276.34] [< 128 us: 5.99/252.40] [< 256 us: 2.99/248.41] [< 512 us: 1.00/217.48] [< 1024 us: 1.00/198.53] [< 2048 us: 0.00/165.61] [< 4096 us: 0.00/95.77] [< 8192 us: 0.00/29.93] [< 16384 us: 0.00/2.00] [< 32768 us: 0.00/0.00]
58+
CPU Average frequency as fraction of nominal: 96.28% (2503.22 Mhz)
59+
60+
Core 3 C-state residency: 78.20% (C3: 12.12% C6: 0.00% C7: 66.08% )
61+
62+
CPU 6 duty cycles/s: active/idle [< 16 us: 1069.45/235.44] [< 32 us: 138.67/112.73] [< 64 us: 203.52/335.20] [< 128 us: 156.63/311.26] [< 256 us: 103.75/192.54] [< 512 us: 52.87/160.62] [< 1024 us: 24.94/173.59] [< 2048 us: 10.97/141.66] [< 4096 us: 6.98/79.81] [< 8192 us: 2.99/27.93] [< 16384 us: 1.00/1.00] [< 32768 us: 0.00/0.00]
63+
CPU Average frequency as fraction of nominal: 98.06% (2549.61 Mhz)
64+
65+
CPU 7 duty cycles/s: active/idle [< 16 us: 484.85/25.94] [< 32 us: 19.95/26.94] [< 64 us: 17.96/49.88] [< 128 us: 6.98/51.88] [< 256 us: 2.00/62.85] [< 512 us: 1.00/65.84] [< 1024 us: 0.00/59.86] [< 2048 us: 0.00/49.88] [< 4096 us: 0.00/62.85] [< 8192 us: 0.00/47.89] [< 16384 us: 0.00/25.94] [< 32768 us: 0.00/2.99]
66+
CPU Average frequency as fraction of nominal: 95.57% (2484.86 Mhz)
67+
68+
Core 4 C-state residency: 84.42% (C3: 5.33% C6: 0.00% C7: 79.09% )
69+
70+
CPU 8 duty cycles/s: active/idle [< 16 us: 785.13/145.65] [< 32 us: 112.73/11.97] [< 64 us: 146.65/202.52] [< 128 us: 123.71/274.35] [< 256 us: 78.81/161.62] [< 512 us: 53.87/139.67] [< 1024 us: 27.93/138.67] [< 2048 us: 5.99/135.68] [< 4096 us: 1.00/90.78] [< 8192 us: 2.00/32.92] [< 16384 us: 0.00/4.99] [< 32768 us: 0.00/0.00]
71+
CPU Average frequency as fraction of nominal: 95.59% (2485.23 Mhz)
72+
73+
CPU 9 duty cycles/s: active/idle [< 16 us: 947.74/86.79] [< 32 us: 16.96/82.80] [< 64 us: 14.96/135.68] [< 128 us: 13.97/124.70] [< 256 us: 2.99/124.70] [< 512 us: 0.00/97.77] [< 1024 us: 0.00/106.75] [< 2048 us: 0.00/96.77] [< 4096 us: 0.00/67.84] [< 8192 us: 0.00/54.87] [< 16384 us: 0.00/16.96] [< 32768 us: 0.00/1.00]
74+
CPU Average frequency as fraction of nominal: 94.94% (2468.49 Mhz)
75+
76+
Core 5 C-state residency: 85.97% (C3: 2.32% C6: 0.00% C7: 83.65% )
77+
78+
CPU 10 duty cycles/s: active/idle [< 16 us: 679.38/94.77] [< 32 us: 61.85/3.99] [< 64 us: 117.72/141.66] [< 128 us: 88.79/205.51] [< 256 us: 46.89/116.72] [< 512 us: 30.93/126.70] [< 1024 us: 13.97/110.74] [< 2048 us: 7.98/119.72] [< 4096 us: 2.00/80.81] [< 8192 us: 3.99/48.88] [< 16384 us: 1.00/3.99] [< 32768 us: 0.00/1.00]
79+
CPU Average frequency as fraction of nominal: 103.96% (2702.93 Mhz)
80+
81+
CPU 11 duty cycles/s: active/idle [< 16 us: 114.73/6.98] [< 32 us: 13.97/2.00] [< 64 us: 12.97/7.98] [< 128 us: 9.98/16.96] [< 256 us: 4.99/13.97] [< 512 us: 1.00/5.99] [< 1024 us: 0.00/12.97] [< 2048 us: 0.00/9.98] [< 4096 us: 0.00/17.96] [< 8192 us: 0.00/23.94] [< 16384 us: 0.00/21.95] [< 32768 us: 0.00/11.97]
82+
CPU Average frequency as fraction of nominal: 96.93% (2520.05 Mhz)

0 commit comments

Comments
 (0)