sure. here’s a quick test with my current setup unchanged (which is minimum brightness, 2xUSB-C 2xUSB-A cards), right after running systemctl rescue
:
Summary: min 2.44 avg 2.50 stdev 0.06 max 2.69
root@angela:~# powerstat
Running for 300.0 seconds (30 samples at 10.0 second intervals).
Power measurements will start in 180 seconds time.
Time User Nice Sys Idle IO Run Ctxt/s IRQ/s Fork Exec Exit Watts
09:50:02 0.0 0.0 0.0 99.9 0.1 1 94 50 2 0 2 2.53
09:50:12 0.0 0.0 0.0 100.0 0.0 1 108 58 0 0 0 2.55
09:50:22 0.0 0.0 0.1 99.8 0.1 1 386 131 187 110 188 2.61
09:50:32 0.0 0.0 0.0 100.0 0.0 1 74 38 0 0 0 2.55
09:50:42 0.0 0.0 0.0 100.0 0.0 1 67 33 0 0 0 2.51
09:50:52 0.0 0.0 0.0 100.0 0.0 1 70 35 0 0 0 2.48
09:51:02 0.0 0.2 0.1 99.6 0.1 1 165 108 38 33 38 2.69
09:51:12 0.0 0.0 0.0 100.0 0.0 1 70 36 0 0 0 2.64
09:51:22 0.0 0.0 0.0 99.9 0.1 1 115 64 0 0 12 2.61
09:51:32 0.0 0.0 0.0 100.0 0.0 1 68 34 0 0 0 2.51
09:51:42 0.0 0.0 0.0 100.0 0.0 1 69 40 0 0 7 2.47
09:51:52 0.0 0.0 0.0 100.0 0.0 1 68 35 0 0 0 2.44
09:52:02 0.0 0.0 0.0 99.9 0.1 1 80 40 0 0 0 2.47
09:52:12 0.0 0.0 0.0 100.0 0.0 1 62 33 0 0 0 2.47
09:52:22 0.0 0.0 0.0 100.0 0.0 1 84 43 0 0 0 2.51
09:52:32 0.0 0.0 0.0 100.0 0.0 1 80 40 0 0 0 2.48
09:52:42 0.0 0.0 0.0 100.0 0.0 1 65 32 0 0 0 2.45
09:52:52 0.0 0.0 0.0 100.0 0.0 1 86 44 0 0 0 2.50
09:53:02 0.0 0.0 0.0 100.0 0.0 1 64 32 0 0 0 2.45
09:53:12 0.0 0.0 0.0 99.9 0.1 1 65 34 0 0 0 2.51
09:53:22 0.0 0.0 0.0 100.0 0.0 1 73 41 0 0 1 2.50
09:53:32 0.0 0.0 0.0 100.0 0.0 1 59 31 0 0 0 2.47
09:53:42 0.0 0.0 0.0 100.0 0.0 1 64 33 0 0 0 2.44
09:53:52 0.0 0.0 0.0 100.0 0.0 1 81 43 0 0 1 2.47
09:54:02 0.0 0.0 0.0 100.0 0.0 1 75 39 0 0 0 2.47
09:54:12 0.0 0.0 0.0 100.0 0.0 1 109 59 0 0 0 2.48
09:54:22 0.0 0.0 0.0 99.9 0.1 1 107 56 0 0 0 2.50
09:54:32 0.0 0.0 0.0 100.0 0.0 1 107 58 0 0 0 2.47
09:54:42 0.0 0.0 0.0 100.0 0.0 1 75 39 0 0 0 2.45
09:54:52 0.0 0.0 0.0 100.0 0.0 1 95 49 0 0 0 2.45
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Average 0.0 0.0 0.0 100.0 0.0 1.0 92.8 47.0 7.6 4.8 8.3 2.50
GeoMean 0.0 0.0 0.0 100.0 0.0 1.0 84.6 43.9 0.0 0.0 0.0 2.50
StdDev 0.0 0.0 0.0 0.1 0.0 0.0 58.6 21.7 34.0 20.4 34.1 0.06
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Minimum 0.0 0.0 0.0 99.6 0.0 1.0 58.8 30.7 0.0 0.0 0.0 2.44
Maximum 0.0 0.2 0.1 100.0 0.1 1.0 385.5 131.4 187.0 110.0 188.0 2.69
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Summary:
System: 2.50 Watts on average with standard deviation 0.06
and here’s the same thing without anything plugged in, again monitor minimum brightness (not sure how to turn the thing off in console and i don’t want to bother):
Summary: min 2.42 avg 2.49 stdev 0.05 max 2.65
root@angela:~# powerstat
Running for 300.0 seconds (30 samples at 10.0 second intervals).
Power measurements will start in 180 seconds time.
Time User Nice Sys Idle IO Run Ctxt/s IRQ/s Fork Exec Exit Watts
09:58:30 0.0 0.0 0.0 100.0 0.0 1 70 37 0 0 0 2.48
09:58:40 0.0 0.0 0.0 99.9 0.1 1 68 35 0 0 0 2.48
09:58:50 0.0 0.0 0.0 99.9 0.0 1 92 47 0 0 0 2.47
09:59:00 0.0 0.0 0.0 100.0 0.0 1 82 44 0 0 0 2.53
09:59:10 0.0 0.0 0.0 100.0 0.0 1 63 31 0 0 0 2.47
09:59:20 0.0 0.0 0.0 100.0 0.0 1 62 32 0 0 0 2.48
09:59:30 0.0 0.0 0.0 100.0 0.0 1 62 31 0 0 0 2.45
09:59:40 0.0 0.0 0.0 100.0 0.0 1 58 29 0 0 0 2.42
09:59:50 0.0 0.0 0.0 99.9 0.1 1 90 49 0 0 0 2.45
10:00:00 0.0 0.0 0.0 100.0 0.0 1 82 47 0 0 0 2.46
10:00:10 0.0 0.0 0.0 99.9 0.1 1 107 60 0 0 0 2.51
10:00:20 0.0 0.0 0.0 99.9 0.1 1 79 39 1 0 1 2.50
10:00:30 0.0 0.0 0.0 100.0 0.0 1 71 36 0 0 0 2.46
10:00:40 0.0 0.0 0.0 100.0 0.0 1 64 31 0 0 0 2.43
10:00:50 0.0 0.0 0.0 99.9 0.0 1 84 50 1 1 1 2.53
10:01:00 0.0 0.1 0.0 99.8 0.1 1 132 71 1 0 0 2.61
10:01:10 0.0 0.0 0.0 100.0 0.0 1 100 50 0 0 0 2.56
10:01:20 0.0 0.0 0.0 100.0 0.0 1 142 36 0 0 0 2.53
10:01:30 0.0 0.0 0.0 100.0 0.0 1 93 45 0 0 0 2.48
10:01:40 0.0 0.0 0.0 100.0 0.0 1 149 43 0 0 0 2.43
10:01:50 0.0 0.0 0.0 100.0 0.0 1 155 45 0 0 0 2.48
10:02:00 0.0 0.0 0.0 99.9 0.1 1 185 61 0 0 0 2.53
10:02:10 0.0 0.0 0.0 100.0 0.0 1 65 35 0 0 0 2.50
10:02:20 0.0 0.0 0.0 100.0 0.0 1 80 42 0 0 0 2.48
10:02:30 0.0 0.0 0.0 100.0 0.0 1 104 51 0 0 0 2.46
10:02:40 0.0 0.0 0.0 100.0 0.0 1 145 42 0 0 0 2.46
10:02:50 0.0 0.0 0.0 100.0 0.0 1 176 55 0 0 0 2.48
10:03:00 0.0 0.0 0.0 99.9 0.1 1 203 72 0 0 0 2.48
10:03:10 0.0 0.2 0.1 99.7 0.1 1 276 134 38 33 38 2.65
10:03:20 0.0 0.0 0.0 100.0 0.0 1 97 49 0 0 0 2.56
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Average 0.0 0.0 0.0 100.0 0.0 1.0 107.9 47.6 1.4 1.1 1.3 2.49
GeoMean 0.0 0.0 0.0 100.0 0.0 1.0 98.7 45.0 0.0 0.0 0.0 2.49
StdDev 0.0 0.0 0.0 0.1 0.0 0.0 50.4 19.5 6.8 5.9 6.8 0.05
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Minimum 0.0 0.0 0.0 99.7 0.0 1.0 57.6 29.1 0.0 0.0 0.0 2.42
Maximum 0.0 0.2 0.1 100.0 0.1 1.0 275.8 134.5 38.0 33.0 38.0 2.65
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Summary:
System: 2.49 Watts on average with standard deviation 0.05
Note: Power calculated from battery capacity drain, may not be accurate.
One problem with both of those tests is that I still had processes running as my user; turns out systemctl rescue
doesn’t actually kill everything. After killing everything, I get a lower power usage, again single-user mode, everything killed, no expansion cards, minimum brightness:
Summary: min 2.00 average 2.02 stdev 0.02 max 2.06
root@angela:~# powerstat
Running for 300.0 seconds (30 samples at 10.0 second intervals).
Power measurements will start in 180 seconds time.
Time User Nice Sys Idle IO Run Ctxt/s IRQ/s Fork Exec Exit Watts
11:02:06 0.0 0.0 0.0 100.0 0.0 1 40 19 0 0 0 2.03
11:02:16 0.0 0.0 0.0 100.0 0.0 1 39 20 0 0 0 2.02
11:02:26 0.0 0.0 0.0 100.0 0.0 1 44 24 0 0 0 2.02
11:02:36 0.0 0.0 0.0 100.0 0.0 1 36 18 0 0 0 2.00
11:02:46 0.0 0.0 0.0 100.0 0.0 1 42 24 0 0 0 2.02
11:02:56 0.0 0.0 0.0 100.0 0.0 1 46 28 0 0 5 2.06
11:03:06 0.0 0.0 0.0 100.0 0.0 2 44 23 0 0 4 2.03
11:03:16 0.0 0.0 0.0 100.0 0.0 1 43 26 0 0 2 2.03
11:03:26 0.0 0.0 0.0 100.0 0.0 1 45 24 0 0 0 2.05
11:03:36 0.0 0.0 0.0 100.0 0.0 1 36 18 0 0 0 2.02
11:03:46 0.0 0.0 0.0 100.0 0.0 1 44 23 0 0 0 2.02
11:03:56 0.0 0.0 0.0 100.0 0.0 1 41 22 1 0 0 2.02
11:04:06 0.0 0.0 0.0 100.0 0.0 1 39 19 0 0 0 2.00
11:04:16 0.0 0.0 0.0 100.0 0.0 1 35 18 0 0 0 2.00
11:04:26 0.0 0.0 0.0 100.0 0.0 1 52 43 0 0 15 2.02
11:04:36 0.0 0.0 0.0 100.0 0.0 1 38 22 0 0 0 2.00
11:04:46 0.0 0.0 0.0 100.0 0.0 1 39 20 0 0 0 2.00
11:04:56 0.0 0.0 0.0 100.0 0.0 1 39 21 0 0 0 2.02
11:05:06 0.0 0.0 0.0 100.0 0.0 1 39 21 0 0 0 2.02
11:05:16 0.0 0.0 0.0 100.0 0.0 1 36 18 0 0 0 2.02
11:05:26 0.0 0.0 0.0 100.0 0.0 1 47 26 0 0 0 2.03
11:05:36 0.0 0.0 0.0 100.0 0.0 1 36 18 0 0 0 2.02
11:05:46 0.0 0.0 0.0 100.0 0.0 1 39 20 0 0 0 2.00
11:05:56 0.0 0.0 0.0 100.0 0.0 1 36 19 0 0 0 2.00
11:06:06 0.0 0.0 0.0 100.0 0.0 1 39 20 0 0 0 2.00
11:06:16 0.0 0.0 0.0 100.0 0.0 1 36 17 0 0 0 2.00
11:06:26 0.0 0.0 0.0 100.0 0.0 1 41 21 0 0 0 2.00
11:06:36 0.0 0.0 0.0 100.0 0.0 1 36 17 0 0 0 2.00
11:06:46 0.0 0.0 0.0 100.0 0.0 1 40 21 0 0 0 2.00
11:06:56 0.0 0.0 0.0 100.0 0.0 1 38 19 0 0 0 2.00
Average 0.0 0.0 0.0 100.0 0.0 1.0 40.1 21.7 0.0 0.0 0.9 2.02
GeoMean 0.0 0.0 0.0 100.0 0.0 1.0 40.0 21.3 0.0 0.0 0.0 2.01
StdDev 0.0 0.0 0.0 0.0 0.0 0.2 3.9 4.8 0.2 0.0 2.9 0.02
Minimum 0.0 0.0 0.0 100.0 0.0 1.0 35.4 17.4 0.0 0.0 0.0 2.00
Maximum 0.0 0.0 0.0 100.0 0.0 2.0 51.5 43.2 1.0 0.0 15.0 2.06
Summary:
System: 2.02 Watts on average with standard deviation 0.02
And here’s the same, in multi-user mode:
Summary: min 2.33 average 2.49 stdev 0.05 max 2.65
anarcat@angela:~$ sudo powerstat
Running for 300.0 seconds (30 samples at 10.0 second intervals).
Power measurements will start in 180 seconds time.
Time User Nice Sys Idle IO Run Ctxt/s IRQ/s Fork Exec Exit Watts
10:36:22 0.2 0.2 0.2 99.2 0.2 1 2053 612 83 19 80 2.96
10:36:32 0.1 0.2 0.2 99.4 0.1 1 2108 632 81 16 87 3.41
10:36:42 0.2 0.3 0.3 99.2 0.1 1 2229 692 88 23 89 3.68
10:36:52 0.2 0.5 0.3 98.9 0.1 1 2414 763 115 46 119 4.08
10:37:02 0.2 0.0 0.1 99.7 0.0 1 1554 343 79 16 80 3.37
10:37:12 0.1 0.0 0.1 99.8 0.0 1 1283 282 76 16 76 2.92
10:37:22 0.2 0.0 0.1 99.7 0.0 1 1601 414 78 16 86 2.69
10:37:32 0.1 0.0 0.1 99.8 0.0 1 1224 290 76 16 77 2.49
10:37:42 0.2 0.0 0.1 99.6 0.1 1 1523 361 86 23 86 2.52
10:37:52 0.2 0.0 0.1 99.6 0.1 1 1562 345 79 16 80 2.55
10:38:02 0.1 0.0 0.1 99.7 0.1 1 1428 333 79 16 78 2.51
10:38:12 0.2 0.0 0.1 99.7 0.1 1 1361 294 78 16 79 2.42
10:38:22 0.2 0.0 0.1 99.7 0.0 1 1392 334 77 16 77 2.35
10:38:32 0.2 0.0 0.1 99.6 0.0 1 1480 294 80 16 79 2.39
10:38:42 0.2 0.0 0.1 99.7 0.0 1 1451 324 87 23 87 2.34
10:38:52 0.2 0.0 0.1 99.7 0.0 1 1590 348 78 16 78 2.49
10:39:02 0.2 0.0 0.1 99.7 0.1 1 1429 298 79 16 79 2.44
10:39:12 0.2 0.0 0.1 99.7 0.1 1 1391 302 78 16 78 2.42
10:39:22 0.2 0.0 0.1 99.7 0.0 1 1307 315 75 16 75 2.33
10:39:32 0.1 0.0 0.1 99.8 0.0 1 1314 301 75 16 74 2.33
10:39:42 0.2 0.0 0.1 99.6 0.1 1 1388 326 86 23 85 2.39
10:39:52 0.2 0.0 0.1 99.7 0.0 1 1302 311 75 16 75 2.42
10:40:02 0.2 0.0 0.2 99.5 0.1 1 1662 364 157 56 156 2.56
10:40:12 0.2 0.0 0.1 99.6 0.1 1 1441 316 77 16 77 2.52
10:40:22 0.2 0.0 0.1 99.7 0.0 1 1455 358 78 16 78 2.57
10:40:32 0.1 0.0 0.1 99.7 0.0 1 1355 299 77 16 77 2.47
10:40:42 0.1 0.0 0.1 99.7 0.0 1 1377 322 85 23 85 2.43
10:40:52 0.2 0.0 0.1 99.7 0.1 1 1404 302 78 16 78 2.39
10:41:02 0.2 0.0 0.1 99.6 0.1 1 1513 327 79 16 79 2.48
10:41:12 0.2 0.0 0.1 99.7 0.0 1 1534 355 78 16 78 2.54
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Average 0.2 0.0 0.1 99.6 0.1 1.0 1537.5 371.9 83.2 19.6 83.7 2.65
GeoMean 0.2 0.0 0.1 99.6 0.0 1.0 1515.5 357.1 82.2 18.5 82.7 2.62
StdDev 0.0 0.1 0.1 0.2 0.0 0.0 283.2 123.8 15.5 8.9 15.6 0.42
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Minimum 0.1 0.0 0.1 98.9 0.0 1.0 1224.3 282.1 75.0 16.0 74.0 2.33
Maximum 0.2 0.5 0.3 99.8 0.2 1.0 2414.2 763.0 157.0 56.0 156.0 4.08
-------- ----- ----- ----- ----- ----- ---- ------ ------ ---- ---- ---- ------
Summary:
System: 2.65 Watts on average with standard deviation 0.42
So this tells us a few interesting things:
- single-user mode uses less CPU than normal multi-user mode. I haven’t explicitly checked, but I bet this is my status bar, taking anywhere between 0.1 and 0.2% CPU usage just sitting there doing idle updates, and there are other things waking up using power (docker, syncthing being the worst offenders according to powertop)
- multi-user mode does use more CPU and more power, but not by much, about half a watt, not bad for something running a full GUI! if you actually compare the first two tests that were “wrong” in the sense that they still had multi-user processes running, you actually see it’s using more power than the multi-user mode (min=2.42 vs min=2.33), which is confusing but I think could be explained by the display compositor doing less update to the GPU than the linux console
- we see the USB cards really have minimal power usage. the Min without the cards is 2.42W instead of 2.44W but that’s inside the standard deviation (0.06W)… it does match with the 20mW we’d expect the USB-A cards to take, but still, it’s not enough for me to unplug and plug those cards all the time
I think that’s about all I can extract from this. Curious to hear if others see anything else.
I will not run the whole test suite again in single user, in case that’s what you’re asking. But I’m happy to make other such small measurements.
Let me know!