IPMI Energy Agent

The IPMI Energy Agent allows Arm MAP and Arm Performance Reports to measure the total energy consumed by the compute nodes in a job.

Requirements

  • The compute nodes must:
    • support IPMI
    • have an IPMI exposed power sensor
    • have an OpenIPMI compatible kernel module installed (i.e. ipmi_devintf)
    • have the corresponding device node in /dev (e.g. /dev/ipmi0)
    • run a supported operating system
  • The IPMI Energy Agent must be run as root.

To quickly list the names of possible IPMI power sensors on a compute node use the following command:

ipmitool sdr | grep Watts

Supported Operating Systems

  • Red Hat Enterprise Linux 6 and 7 x86_64
  • SUSE Enterprise Linux 11 and 12 x86_64
  • Ubuntu 12.04 and 14.04 x86_64

Technical Description

The IPMI Energy Agent is a daemon that runs as root on each compute node. The daemon is configured with the name of an IPMI exposed power sensor (e.g. "Pwr Consumption").  The daemon polls this sensor in the background (default: every second) and writes the current values to /var/spool/ipmi-energy-agent where they may be read by user programs such as Arm MAP and Arm Performance Reports.

Installation

Red Hat Enterprise Linux and SUSE Enterprise Linux

rpm -i ipmi-energy-agent-1.0-1.x86_64.rpm
chkconfig ipmi-energy-agent on

Then for RHEL 7, SLES 12:

systemctl start ipmi-energy-agent

Or, for RHEL 6, SLES 11:

service ipmi-energy-agent start

Ubuntu

dpkg -i ipmi-energy-agent_1.0-2_amd64.deb

Configuration

The only configuration required is to set the name of the IPMI sensor.

Create / edit /etc/default/ipmi-energy-agent and add the line:

IPMI_SENSOR_NAME='sensor name'

(where 'sensor name' is the name of the IPMI exposed power sensor)

Downloads

Change Log

  • 1.0 2015-12-16: Initial release.