Computer science marches towards energy-aware practices. This trend impacts not only the design of computer architectures, but also the design of programs. However, developers still lack affordable and accurate technology to measure energy consumption in computing systems. The goal of this paper is to mitigate such problem. To this end, we introduce JetsonLEAP, a framework that supports the implementation of energy-aware programs. JetsonLEAP consists of an embedded hardware, in our case, the Nvidia Tegra TK1 System-on-a-chip device, a circuit to control the flow of energy, of our own design, plus a library to instrument program parts. We discuss two different circuit setups. The most precise setup lets us reliably measure the energy spent by 225,000 instructions, the least precise, although more affordable setup, gives us a window of 975,000 instructions. To probe the precision of our system, we use it in tandem with a high-precision, high-cost acquisition system, and show that results do not differ in any significant way from those that we get using our simpler apparatus. Our entire infrastructure - board, power meter and both circuits - can be reproduced with about $500.00. To demonstrate the efficacy of our framework, we have used it to measure the energy consumed by programs running on ARM cores, on the GPU, and on a remote server. Furthermore, we have studied the impact of OpenACC directives on the energy efficiency of high-performance applications.
Much has been done, recently, to enable the reliable acquisition of power data from computing machinery. In this section we go over a few related work, focusing on the unique characteristics of our JetsonLeap. Before we commence our discussion, we emphasize a point: a lot of related literature uses energy models to derive metrics [ @cite_13 @cite_0 @cite_24 ]. Even though we do not contest the validity of these results, we are interested in direct energy probing. Thus, models, i.e., indirect estimation, are not part of this survey. Nevertheless, we believe that an infrastructure such as JetsonLeap can be used to calibrate new analytical models.
@cite_0 @cite_13 @cite_24
2950414428 139065849 2551993261 1561400598
Energy models can be constructed by characterizing the energy consumed by executing each instruction in a processor's instruction set. This can be used to determine how much energy is required to execute a sequence of assembly instructions, without the need to instrument or measure hardware. However, statically analyzing low-level program structures is hard, and the gap between the high-level program structure and the low-level energy models needs to be bridged. We have developed techniques for performing a static analysis on the intermediate compiler representations of a program. Specifically, we target LLVM IR, a representation used by modern compilers, including Clang. Using these techniques we can automatically infer an estimate of the energy consumed when running a function under different platforms, using different compilers. One of the challenges in doing so is that of determining an energy cost of executing LLVM IR program segments, for which we have developed two different approaches. When this information is used in conjunction with our analysis, we are able to infer energy formulae that characterize the energy consumption for a particular program. This approach can be applied to any languages targeting the LLVM toolchain, including C and XC or architectures such as ARM Cortex-M or XMOS xCORE, with a focus towards embedded platforms. Our techniques are validated on these platforms by comparing the static analysis results to the physical measurements taken from the hardware. Static energy consumption estimation enables energy-aware software development, without requiring hardware knowledge. Power aware compilers have been under research during the last few years. However, there is still a need for accurate energy models for supporting software optimizations. In this paper we present a new energy model on the instruction level. As an addition to former models, the bit toggling on internal and external busses as well as accesses to off-chip memories are considered. To determine the characteristics, a measuring method is presented which can be used to establish the energy model without detailed knowledge of the internal processor structures. Finally, the proposed energy model is established for the ARM7TDMI RISC processor. In this paper, we apply an emerging method, online learning with dynamics, to deduce properties of distributed energy resources (DERs) from coarse measurements, e.g., measurements taken at distribution substations, rather than household-level measurements. Reduced sensing requirements can lower infrastructure costs associated with reliably incorporating DERs into the distribution network. We specifically investigate whether dynamic mirror descent (DMD), an online learning algorithm, can determine the real-time controllable demand served by a distribution feeder using feeder-level active power demand measurements. In our scenario, DMD incorporates various controllable demand and uncontrollable demand models to generate real-time controllable demand estimates. In a realistic scenario, these estimates have an RMS error of 8.34 of the average controllable demand, which improves to 5.53 by incorporating more accurate models. We propose topics for additional work in modeling, system identification, and the DMD algorithm itself that could improve the RMS errors. In this paper, the modeling of building end-use energy profile is comprehensively investigated. Top-down and Bottom-up approaches are discussed with a focus on the latter for better integration with occupant information. Compared to the Time-Of-Use (TOU) data used in previous Bottom-up models, this work utilizes high frequency sampled appliance power consumption data from wireless sensor network, and hence builds an appliance-data-driven probability based end-use energy profile model. ON OFF probabilities of appliances are used in this model, to build a non-homogeneous Markov Chain, compared to the duration statistics based model that is widely used in other works. The simulation results show the capability of the model to capture the diversity and variability of different categories of end-use appliance energy profile, which can further help on the design of a modern robust building power system.