Designing Energy-Aware Optimization Techniques through Program Behaviour Analysis
Kommaraju, Ananda Varadhan
MetadataShow full item record
Green computing techniques aim to reduce the power foot print of modern embedded devices with particular emphasis on processors, the power hot-spots of these devices. In this thesis we propose compiler-driven and profile-driven optimizations that reduce power consumption in a modern embedded processor. We show that these optimizations reduce power consumption in functional units and memory subsystems with very low performance loss. We present three new techniques to reduce power consumption in processors, namely, transition aware scheduling, leakage reduction in data caches using criticality analysis, and dynamic power reduction in data caches using locality analysis of data regions. A novel instruction scheduling technique to address leakage power consumption in functional units is proposed. This scheduling technique, transition aware scheduling, is motivated by idle periods that arise in the utilization of functional units during program execution. A continuously large idle period in a functional unit can be exploited to place the unit in low power state. This novel scheduling algorithm increases the duration of idle periods without hampering performance and drives power gating in these periods. A power model defined with idle cycles as a parameter shows that this technique saves up to 25% of leakage power with very low performance impact. In modern embedded programs, data regions can be classified as critical and non-critical. Critical data regions significantly impact the performance. A new technique to identify such data regions through profiling is proposed. This technique along with a new criticality based cache policy is used to control the power state of the data cache. This scheme allocates non-critical data regions to low-power cache regions, thereby reducing leakage power consumption by up to 40% without compromising on the performance. This profiling technique is extended to identify data regions that have low locality. Some data regions have high data reuse. A locality based cache policy based on cache parameters like size and associativity is proposed. This scheme reduces dynamic as well as static power consumption in the cache subsystem. This optimization reduces 25% of the total power consumption in the data caches without hampering the execution time. In this thesis, the problem of power consumption of a program is decoupled from the number of processor cores. The underlying architecture model is simplified to abstract away a variety of processor scenarios. This simplified model can be scaled up to be implemented in various multi-core architecture models like Chip Multi-Processors, Simultaneous Multi-Threaded Processors, Chip Multi-Threaded Processors, to name a few. The three techniques proposed in this thesis leverage underlying hardware features like low power functional units, drowsy caches and split data caches. These techniques reduce power consumption of a wide range of benchmarks with low performance loss.
Showing items related by title, author, creator and subject.
Excitation Energy Transfer In Donor-Acceptor Systems Involving Metal Nanoparticles, And In Conjugated Polymers Saini, Sangeeta (2013-02-19)This thesis consists of two parts and nine chapters. The first part (Part I) presents theoretical studies on non-radiative mode of excitation energy transfer (EET) in donor-acceptor (D-A) systems involving metal nanoparticles. ...
Nandanwar, Mahendra N (2018-05-14)Continued emission of green house gases has energized research activity worldwide to develop efficient ways to harness renewal energy. The availability of large scale energy storage technologies is essential to make renewal ...
Hiremath, Rahul B (2010-02-18)The energy-planning involves finding a set of sources and conversion devices so as to meet the energy requirements/demands of all the activities in an optimal manner. This could occur at centralized or decentralized level. ...