计算机科学与探索 ›› 2013, Vol. 7 ›› Issue (8): 673-690.DOI: 10.3778/j.issn.1673-9418.1305041

• 综述·探索 • 上一篇    下一篇

绿色编译优化策略:研究综述

何炎祥1,2,陈  勇1,2+,吴  伟1,2,李清安1,2,江  南1,2,徐  超1,2   

  1. 1. 武汉大学 计算机学院,武汉 430072
    2. 武汉大学 软件工程国家重点实验室,武汉 430072
  • 出版日期:2013-08-01 发布日期:2013-08-06

Optimization for Green Compilations: A Survey

HE Yanxiang1,2, CHEN Yong1,2+, WU Wei1,2, LI Qing’an1,2, JIANG Nan1,2, XU Chao1,2   

  1. 1. School of Computer, Wuhan University, Wuhan 430072, China
    2. State Key Laboratory of Software Engineering, Wuhan University, Wuhan 430072, China
  • Online:2013-08-01 Published:2013-08-06

摘要: 随着人类活动对环境影响的日益增大,各种高能耗、低资源利用率、高污染电子设备的大量应用,给环境带来了严峻的挑战。如何减少对环境的破坏已经成为人们不可忽视的一个重要问题。编译器既是必不可少的基础软件,又是研制软件的重要工具,目前很多编译优化的研究已经从传统单纯的性能优化逐渐转变为对能耗、资源利用率等绿色需求相关优化的研究。根据现有的绿色需求相关定义以及编译器的主要特点,提出了绿色编译器的定义及其主要目标。针对各种面向绿色需求的新型体系结构,分别从总线、存储系统和处理器这三个组成计算机的重要部件出发,分析了现有编译器在软件运行过程中的相关优化方法及其可能的改进方案。最后,分析了编译器在提高软件测试效率,减少绿色指标软件开发过程中开销的相关方法,为以后绿色编译优化的研究奠定了基础。

关键词: 绿色编译, 能耗, 资源利用率, 软件测试与调试

Abstract: As the increasing environmental impact of human activities, high energy consumption, low utilization, and high pollution electronic equipments are widely used. The environment encounters severe challenges. How to reduce the sabotage to the environment has become an important problem. Compiler is not only the foundational software, but also the most important tool for the software optimizations. Recently, many compilation optimization researches transform from traditional pure performance optimization into green optimization such as low power consumption, high resource utilization and high endurance. According to the conception of green and the characteristic of compiler, this paper proposes green compiler and its major optimization. Then, from the aspects of buses system, memory system and processor, this paper analyzes the existing compiler optimization methods for green purpose and illustrates some possible improving methods. Finally, this paper analyzes the compiler-directed methods for improving the efficiency of software test and reducing the overheads of software development. These contents can be a good fundamental for further green optimization based on compiler.

Key words: green compilations, energy consumption, resource utilization, software testing and debugging