How to use the Intel® Energy Profiler in Intel® System Studio 2015 on a Microsoft Windows* OS Target

 

How to use the Intel® Energy Profiler in Intel® System Studio 2015 on a Microsoft Windows* OS Target

Introduction

Intel® System Studio 2015 now contains an energy and power profiler called Intel® Energy Profiler. Using the Intel Energy Profiler allows you to collect sleep state, frequency and temperature data, and to find the software that is causing unwanted power use. This article provides an overview of the Intel Energy Profiler on a Windows* OS target.

Background

Two key indicators that affect how much power your system is using are CPU Sleep states and CPU Frequency.

  • CPU Sleep states (C-States) 
    • CPU Sleep states indicate the intervals your CPU is asleep. The main goal of CPU Sleep states is to show when the system is sleeping, what sleep state it was in, and what woke up the system. The higher the sleep state, the lower the power usage.
  • CPU Frequency (P-states)
    • CPUs also have the ability to change the core clock frequency. The greater the frequency, the higher the power usage.

The following diagram shows how these C-States and P-States are related.

Intel® SoC Watch

Intel® SoC Watch , a feature in the Intel System Studio, is a command line tool for monitoring system behaviors related to power consumption on Intel® microarchitectures.

It collects power-relevant metrics, such as sleep state residencies, energy thermals, idle/wakeup analysis, timer resolution change, and bandwidth..

Intel SoC Watch is the primary collection mechanism for the Intel Energy Profiler, which provides correlated views of these metrics.

Intel SoC Watch requires no extra hardware to report data from the following:

  • Operating systems
    • Windows 8 and 8.1
    • Google Android*
  • Intel microarchitectures
    • Formerly code name Bay Trail
    • Code named Broadwell
    • Formerly code named Clarkville
    • Formerly code named Haswell
    • Haswell ULT
    • Code named Ivy Bridge
    • Code named Nehalem
    • Code named Sandy Bridge
    • Cherry Trail (support coming soon)
    • Code name Skylake (support coming soon)

Reported data includes:

  • Windows* OS Event Traces (ETW) (relevant events are enabled by the tool and logged by the operating system)

  • Designated registers

    • Machine Status Register (MSR)

    • Intel On-Chip System Fabric (IOSF) sideband

    • Memory-Mapped I/O (MMIO)

The data is read at OS context switch points with no added wakeups, and logged via ETW using a highly efficient buffer/write logging mechanism.

Collection overhead is generally less than 2%. Analysis occurs after collection ends. Results are corroborated by data collected using an external hardware measuring device (NiDAQ).

Installing Intel SoC Watch

Intel SoCWatch is installed automatically on your Windows* system as part of the standard Intel System Studio 2015 install. See the release notes for detailed system requirements.

Running an Intel SoC Watch collection

Produce a data file that can be imported into VTune Amplifier for Systems:

socwatch –t 30 –f sys –m –r sww –o myResults

where:

-t 30 specifies that you want to collect for 30 seconds

-f sys selects a group of system-level metrics

-m specifies the maximum level of detail

-r sww specifies that you want to produce a data file that can be imported into VTune Amplifier for Systems

Importing collected results into VTune Amplifier for Systems

Enter:

amplxe-cl –import myResults.sww1 –r myProject

Displaying the collected results in the VTune Amplifier for Systems GUI

Enter:

amplxe-gui myProject

 

Summary

Intel Energy Profiler and the Intel SoC Watch collector provide some powerful insights into your system. The platform metrics it collects can indicate if you are using power efficiently or if you are wasting energy.

 

For more complete information about compiler optimizations, see our Optimization Notice.