RAPL for energy measurement

RAPL for energy measurement

Hi guys,

To my understanding, there are 4 interfaces defined by MSR to measure the energy consumption: PKG (package power), PP0 (core), PP1 (uncore) and DRAM. To my understanding, PKG = PP0 + PP1, and PP1 includes the power consumption of the LLC, intergrated graphic card and many other uncore stuff. And the DRAM is basically the power consumption of the main memory. Is that right?

Many thanks!

Yunqi

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

Hi Yunqi,

can you post your source?Is this ISDM?

Hi iliyapolak,

Partly the SDM Volume 3: 14.7 Platform specific power management support, and from this paper 2.1 Overview.

Thank you!

Hi Yunqi,

There is the difference between the exact meaning of PP1 power plane when you take into account client and server system.DRAM power plane is only supported on server chips.Server RAPL do not support PP0 power plane.

@Yunqi,

Have you ever considered writing a driver to access various MSR register addressing space?

What do you mean exactly by a driver? I believe that's gonna be a cool idea but I don't quite get it. Could you explain some more details? Thanks!

Quote:

iliyapolak wrote:

@Yunqi,

Have you ever considered writing a driver to access various MSR register addressing space?

>>>Could you explain some more details? Thanks!>>>

I'm working on project where I want to develop a simple driver for Windows platform.Such a driver will be used to access MSR addressing space by using inline assembly code mainly wrmsr and rdmsr instruction in order to read/write those registers.I suppose that you are mainly developing code for Linux platform(few weeks ago I saw your code at git repository)

Quote:

iliyapolak wrote:

>>>Could you explain some more details? Thanks!>>>

I'm working on project where I want to develop a simple driver for Windows platform.Such a driver will be used to access MSR addressing space by using inline assembly code mainly wrmsr and rdmsr instruction in order to read/write those registers.I suppose that you are mainly developing code for Linux platform(few weeks ago I saw your code at git repository)

I'd love to contribute to the linux part if it is going to be an open source project and I've send you a message about some details. Thanks!

The bulk of code which reads/writes to MSR address space is OS agnostic only the driver helper routines or driver implementation is different on both OS's.

Leave a Comment

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