Power Consumption Measurement


I am currently trying to measure the power consumption during running different types of workloads on the HiFive Unleashed board. So I was wondering if there is currently any “Software way” of doing this, much like Intel’s RAPL, which can be used to measure power consumption on x86 machines.

Or is the “Hardware way” discussed in this topic, using the J14 headers, the only way for measuring power consumption?

Some suggestions will be very helpful.


Hardware is the only option for power measurement. Depending on what you’re trying to measure, you may not need to use the J14 headers. For example, if you’re looking for power consumption measures across relatively long time constants, you might be able to get reasonable results at the DC barrel jack.

By the way, I believe Intel RAPL is a software model that predicts energy consumption based on activity metrics in their chip: https://01.org/blogs/2014/running-average-power-limit-–-rapl

So it isn’t measuring energy consumption directly. It should be possible to build something like RAPL for the HiFive Unleashed, if one were to instrument the kernel appropriately and train the model. However the alignment between the model predictions and actual consumption may be less useful than Intel’s model, since the FU540 doesn’t have the same detailed activity counters that Intel’s chips likely do.

Thank you very much for your valuable reply. This gave me valuable insights about what’s possible and what’s not at the current time. I will try measuring power through hardware. If I need any more help for that, I will let you know in this thread.