File Download
Supplementary
-
Citations:
- Appears in Collections:
postgraduate thesis: A sound and efficient program testing and execution framework in green computing
Title | A sound and efficient program testing and execution framework in green computing |
---|---|
Authors | |
Issue Date | 2015 |
Publisher | The University of Hong Kong (Pokfulam, Hong Kong) |
Citation | Kan, Y. E. [簡應揚]. (2015). A sound and efficient program testing and execution framework in green computing. (Thesis). University of Hong Kong, Pokfulam, Hong Kong SAR. |
Abstract | Energy efficiency is an important area of research due to the need to preserve battery power and reduce the carbon footprint of the IT industry. Existing power models reveal that energy consumption is affected by two software-related factors: the latency of program executions and the configuration of power dissipating components. In this thesis, we propose a sound and efficient program testing and execution framework (abbreviated as SEPTE) to effectively fine-tune these factors.
It applies loop perforation to transform soft computing programs and verifies their performance and quality using a novel test case prioritization scheme. Machine learning and crowdsourcing are employed to determine energy-efficient configurations. Lastly, a runtime monitor activates the optimized configuration and ensures acceptable computation QoS.
For the factor of execution latency, SEPTE innovatively transforms a given program into a sequence of energy-efficient variants to ensure acceptable runtime QoS by means of execution recovery. Experimental results show that the variants can reduce total execution time by 34.8% compared with that of the original program. To the best of our knowledge, existing unsound transformations do not account for QoS metrics achieved at runtime. Our framework addresses this problem and even outperforms an existing greedy approach with the enhancement of execution recovery by 23.6% in total execution time.
An individual variant may fall short in QoS compared with the given program. To identify QoS-acceptable program variants from a generated pool, SEPTE statically determines potentially energy-saving (perforable) code locations and applies novel metrics to guide the prioritization of test cases to validate the variants.
Empirical results show that the metric can effectively guide the testing process and reduce the number of test executions by up to 47.2% compared with the control methods.
Each QoS-acceptable program variant, however, may be used under different configurations. For mobile computing systems, SEPTE conducts a coordinated global search for energy-efficient configurations in a crowdsourcing scenario. It requests participating mobile devices to dedicate a small percentage of their executions to the search. A multi-subject simulation shows continuous improvements in energy efficiency as better configurations are discovered in the course of the search.
For each configuration selected, a program may be further optimized through
Dynamic Voltage and Frequency Scaling, which alters the execution delay with a tradeoff of lowering energy consumption. We challenge a prevailing assumption that a simple, inexpensive heuristic should be used to adjust processor frequency online without regard to the executing application. In SEPTE, we propose two advanced algorithms that utilize machine learning techniques and convex optimization to analyze resource utilization patterns, and to fulfill task-specific deadlines. Empirical results show that our proposed algorithms are lightweight and outperform prior techniques based on the above assumption.
In conclusion, we have proposed SEPTE, a novel energy optimization framework that can effectively extract energy savings for various types of computing platforms and software applications. Our results can not only improve the battery life of mobile devices, but also contribute to a greener computing environment by reducing the amount of energy required to complete the same computations. |
Degree | Doctor of Philosophy |
Subject | Information technology - Environmental aspects Information technology - Energy consumption Energy conservation - Computer systems Green technology |
Dept/Program | Computer Science |
Persistent Identifier | http://hdl.handle.net/10722/241303 |
HKU Library Item ID | b5864144 |
DC Field | Value | Language |
---|---|---|
dc.contributor.author | Kan, Ying-yeung, Edward | - |
dc.contributor.author | 簡應揚 | - |
dc.date.accessioned | 2017-06-05T06:38:19Z | - |
dc.date.available | 2017-06-05T06:38:19Z | - |
dc.date.issued | 2015 | - |
dc.identifier.citation | Kan, Y. E. [簡應揚]. (2015). A sound and efficient program testing and execution framework in green computing. (Thesis). University of Hong Kong, Pokfulam, Hong Kong SAR. | - |
dc.identifier.uri | http://hdl.handle.net/10722/241303 | - |
dc.description.abstract | Energy efficiency is an important area of research due to the need to preserve battery power and reduce the carbon footprint of the IT industry. Existing power models reveal that energy consumption is affected by two software-related factors: the latency of program executions and the configuration of power dissipating components. In this thesis, we propose a sound and efficient program testing and execution framework (abbreviated as SEPTE) to effectively fine-tune these factors. It applies loop perforation to transform soft computing programs and verifies their performance and quality using a novel test case prioritization scheme. Machine learning and crowdsourcing are employed to determine energy-efficient configurations. Lastly, a runtime monitor activates the optimized configuration and ensures acceptable computation QoS. For the factor of execution latency, SEPTE innovatively transforms a given program into a sequence of energy-efficient variants to ensure acceptable runtime QoS by means of execution recovery. Experimental results show that the variants can reduce total execution time by 34.8% compared with that of the original program. To the best of our knowledge, existing unsound transformations do not account for QoS metrics achieved at runtime. Our framework addresses this problem and even outperforms an existing greedy approach with the enhancement of execution recovery by 23.6% in total execution time. An individual variant may fall short in QoS compared with the given program. To identify QoS-acceptable program variants from a generated pool, SEPTE statically determines potentially energy-saving (perforable) code locations and applies novel metrics to guide the prioritization of test cases to validate the variants. Empirical results show that the metric can effectively guide the testing process and reduce the number of test executions by up to 47.2% compared with the control methods. Each QoS-acceptable program variant, however, may be used under different configurations. For mobile computing systems, SEPTE conducts a coordinated global search for energy-efficient configurations in a crowdsourcing scenario. It requests participating mobile devices to dedicate a small percentage of their executions to the search. A multi-subject simulation shows continuous improvements in energy efficiency as better configurations are discovered in the course of the search. For each configuration selected, a program may be further optimized through Dynamic Voltage and Frequency Scaling, which alters the execution delay with a tradeoff of lowering energy consumption. We challenge a prevailing assumption that a simple, inexpensive heuristic should be used to adjust processor frequency online without regard to the executing application. In SEPTE, we propose two advanced algorithms that utilize machine learning techniques and convex optimization to analyze resource utilization patterns, and to fulfill task-specific deadlines. Empirical results show that our proposed algorithms are lightweight and outperform prior techniques based on the above assumption. In conclusion, we have proposed SEPTE, a novel energy optimization framework that can effectively extract energy savings for various types of computing platforms and software applications. Our results can not only improve the battery life of mobile devices, but also contribute to a greener computing environment by reducing the amount of energy required to complete the same computations. | - |
dc.language | eng | - |
dc.publisher | The University of Hong Kong (Pokfulam, Hong Kong) | - |
dc.relation.ispartof | HKU Theses Online (HKUTO) | - |
dc.rights | This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License. | - |
dc.rights | The author retains all proprietary rights, (such as patent rights) and the right to use in future works. | - |
dc.subject.lcsh | Information technology - Environmental aspects | - |
dc.subject.lcsh | Information technology - Energy consumption | - |
dc.subject.lcsh | Energy conservation - Computer systems | - |
dc.subject.lcsh | Green technology | - |
dc.title | A sound and efficient program testing and execution framework in green computing | - |
dc.type | PG_Thesis | - |
dc.identifier.hkul | b5864144 | - |
dc.description.thesisname | Doctor of Philosophy | - |
dc.description.thesislevel | Doctoral | - |
dc.description.thesisdiscipline | Computer Science | - |
dc.description.nature | published_or_final_version | - |
dc.identifier.mmsid | 991022468719703414 | - |