TL;DR
How can I measure the power consumption of a system that uses power supplies with multiple voltage outputs?
Background
I need to perform some power consumption tests on a desktop computer. I will be running various workloads on it, and want to measure the power response at the board level. It uses a standard 24-pin ATX connector, which supplies voltages of +3.3V, +5.0V, +12.0V, and -12.0V. I want to run both active and passive workloads, and record the power consumption while the system is asleep, if possible.
I know there are numerous components on a desktop system that can affect power measurements, such as WiFi cards, SSD/HDD, PCH, etc. Most of these effects are actually desirable, because I want to see when the system's power management features don't reduce their power consumption properly in various S-, P-, and C-states. I have determined that the most significant source of error remaining in my test infrastructure is the power supply. I am seeking to eliminate the power supply as a source of error.
I can freely open up and modify the supply as needed, including cutting and splicing the wires.
Here are a few characteristics of an ideal solution:
- Starting measurement, stopping measurement, and collecting results can be automated with Python scripts
- <25mW measurement error when the system is drawing <1A
- As low-cost as possible
- Can switch out the system under test easily
- Measures the power consumption of the whole motherboard and everything attached to it, excluding the supply itself if possible
Possible Solutions
Use multiple power meters
I could wire up four discrete power meters to the outputs of the power supply, one for each voltage.Pros:
- Probably the most accurate of the options
- Usable in all system sleep/wake states
Cons:
- Four power meters is very large cost investment to measure just one system at a time
- Difficult to switch out the system under test
Test Target Software
Both Windows and Linux (I don't care about MacOS) have the ability to tap into hardware registers that track power consumption. I could read these registers to estimate power consumption.Pros:
- No hardware requirements
- Easy to replicate on multiple test systems
- Free
Cons:
- Can't measure power during sleep states
- Cannot give accurate total-system power measurements, only system components that have registers configured for this
Measure the PSU input instead
There are tools like Watts Up? power meters that measure power consumption, as seen by the wall outlet.Pros:
- Much lower cost than four power meters
- Easy to switch out the system under test
Cons:
- Includes power consumption of PSU
- Haven't found one yet that is accurate enough while providing a programmable interface and the ability to measure both current and voltage at the same time (or power directly)
The Question
Are there other solutions or techniques that I have left off of this list, or aspects to the included ideas that I should consider? Is there an industry-standard approach to measuring power consumption on mixed-voltage devices, or are they generally custom to each application?
Note
I have taken a look at these other related questions from EESE, but they haven't been helpful for this question:
Power consumption of my device
Measuring power consumption
Measuring Output Amps From a Power Supply
Multiple voltage output power supply
Measuring precisely the efficiency of a power converter