[Request] Power model & accuracy

[Request] Power model & accuracy


I am interested in this tool. Because energy is a very important factor in developing SW.

However I have some questions.

How to associate API counters with energy?

How togetpower(or energy)models?

Lastly I wonder that energy metricsis related with real system energy.

(a point ofpower(orenergy)model's accuracy)

Please send me the information.


Jihwan Park (jh79.park@samsung.com)

4 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Dear Jihwan?,

First of all, thank-you for your interest in the Intel Energy Checker SDK!

We are not using models for energy consumption, we are actually measuring energy consumption for the system. The SDK is shipped with a tool named ESRV that reads energy consumption from supported power meters and instrumented power supplies. ESRV exports the data via the SDK's API.

You can read the ESRV data directly from your application, or a separate application can correlate counter data from one or more applications with the energy consumption data exported by ESRV. This provides an opportunity to see / verify actualpower usage when you adjust algorithms, software configurations, or hardware configurations.

From this, you can model your energy usage, but that is based on your real measured energy draw.

Does this answer your question? I can provide more information on how ESRV operates, if you would like.

- Jamel

Dear Jamel,

Thank you for your answer. It is a good tool to mobile SW engineers.

Surely, I want to be provided more information on how ESRV operates.

I understood that the Intel Energy Checker SDK shows a real energy by reading the ESRV(Energy Server).

However the power meter or power supply is a seperated hardware with a system. How to get the energy information from those?

In my thought, it needs toget physical connectionbetween the ESRV and the power meter or power supply, isn't it? and what's difference a current meter sensor in a Intel CPU?

I want to get more information about the ESRV including operating environments (e.g. only Intel system ?).

Also, I wonder if the range of theenergyis eitherthe core or the total of mobile device.



Dear Jihwan,

ESRV collects data from external power meters or specially instrumented power supplies. Meters that provide internal integration of energy consumption will provide the best results. Regardless of the precision of the meter or instrumented power supply, ESRV records energy consumption in hundredths of Joules. This may be useful to you as you look to collect data from mobile systems.

Hopefully your mobile system is an Intel system. :-) If it is, you can run the ESRV application either on the mobile system itself (if running one of the supported OSes) or you can run ESRV on an external system. ESRV runs as a 32-bit or 64-bit application on recent versions of Windows*, Linux*, Solaris* 10, and MacOS* X. Non-Intel systems will need to run ESRV on an external system running a supported OS.

Ordinarily, ESRV is set up to read the wall power consumption (AC or DC) for a given platform. This is the total system-level power usage. However, it is possible to set up a supported meter to read a specific power rail and use ESRV to collect data from just that specific power rail. (The documentation for each meter should provide some information on how you can set up that meter to read a voltage level and current level; once the meter is properly configured, ESRV should read the data from the meter.)

When running an application on one machine and running ESRV on another machine, the application data and ESRV data will usually be on separate machines. By mounting a networked file system to the other system's productivity link folder or using some of the tools included with the SDK, you can bring the two sets of data together. The Intel Energy Checker SDK User Guide's annex provides some information on how you can correlate data on one machine with data on another machine. In fact, the two machines do not need to run the same OS--one could be Linux and one could be Windows, for example.

Does this answer your question?

- Jamel

Leave a Comment

Please sign in to add a comment. Not a member? Join today