File Download
Supplementary

postgraduate thesis: A sound and efficient program testing and execution framework in green computing

TitleA sound and efficient program testing and execution framework in green computing
Authors
Issue Date2015
PublisherThe 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.
AbstractEnergy 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.
DegreeDoctor of Philosophy
SubjectInformation technology - Environmental aspects
Information technology - Energy consumption
Energy conservation - Computer systems
Green technology
Dept/ProgramComputer Science
Persistent Identifierhttp://hdl.handle.net/10722/241303
HKU Library Item IDb5864144

 

DC FieldValueLanguage
dc.contributor.authorKan, Ying-yeung, Edward-
dc.contributor.author簡應揚-
dc.date.accessioned2017-06-05T06:38:19Z-
dc.date.available2017-06-05T06:38:19Z-
dc.date.issued2015-
dc.identifier.citationKan, 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.urihttp://hdl.handle.net/10722/241303-
dc.description.abstractEnergy 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.languageeng-
dc.publisherThe University of Hong Kong (Pokfulam, Hong Kong)-
dc.relation.ispartofHKU Theses Online (HKUTO)-
dc.rightsThis work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.-
dc.rightsThe author retains all proprietary rights, (such as patent rights) and the right to use in future works.-
dc.subject.lcshInformation technology - Environmental aspects-
dc.subject.lcshInformation technology - Energy consumption-
dc.subject.lcshEnergy conservation - Computer systems-
dc.subject.lcshGreen technology-
dc.titleA sound and efficient program testing and execution framework in green computing-
dc.typePG_Thesis-
dc.identifier.hkulb5864144-
dc.description.thesisnameDoctor of Philosophy-
dc.description.thesislevelDoctoral-
dc.description.thesisdisciplineComputer Science-
dc.description.naturepublished_or_final_version-
dc.identifier.mmsid991022468719703414-

Export via OAI-PMH Interface in XML Formats


OR


Export to Other Non-XML Formats