ICSE 2012 Workshops
2012 34th International Conference on Software Engineering (ICSE)
Powered by
Conference Publishing Consulting

2012 First International Workshop on Green and Sustainable Software (GREENS), June 3, 2012, Zurich, Switzerland

GREENS 2012 – Proceedings

Contents - Abstracts - Authors

First International Workshop on Green and Sustainable Software (GREENS)


Title Page

GREENS provides a forum for practitioners and academics to share knowledge, ideas, practices and current results related to green and sustainable software engineering. Topics range from bringing sustainability and energy efficiency into all lifecycle stages, to green metrics, notations, and tools.

Energy Efficiency: Estimating, Reporting, Governance

Estimating Android Applications' CPU Energy Usage via Bytecode Profiling
Shuai Hao, Ding Li, William G. J. Halfond, and Ramesh Govindan
(University of Southern California, USA)
Optimizing the energy efficiency of mobile applications can greatly increase user satisfaction. However, developers lack easily applied tools for estimating the energy consumption of their applications. This paper proposes a new approach, eCalc, that is lightweight in terms of its developer requirements and provides code-level estimates of energy consumption. The approach achieves this using estimation techniques based on program analysis of the mobile application. In evaluation, eCalc is able to estimate energy consumption within 9.5% of the ground truth for a set of mobile applications. Additionally, eCalc provides useful and meaningful feedback to the developer that helps to characterize energy consumption of the application.

Article Search
Approximating Quality Contracts for Energy Auto-tuning Software
Sebastian Götz, Claas Wilke, Sebastian Richly, and Uwe Aßmann
(TU Dresden, Germany)
An emerging trend for future software systems is self-optimization, especially w.r.t. energy efficiency. Models of soft- and hardware components at runtime, expressing current and alternative system configurations, are exploited to improve service utility as well as to decrease energy consumption. In recent work we showed how quality contracts---expressing dependencies between software and hardware components---can be used for energy auto-tuning. Notably, the declared provisions and requirements of individual components depend on software containers (i.e., the servers, components are deployed on) and thus, cannot be declared completely at design time. In this paper we present a semi-automated contract creation process that combines manual created contract templates with benchmarking and mathematical approximations for non-functional properties depending on the components' runtime behavior as well as their service's input parameters. We identify individual process activities and show how the process can be applied to approximate the non-functional behavior of software components providing simple sorting functionality.

Article Search
GMoCA: Green Mobile Cloud Applications
Yan Gu, Verdi March, and Bu Sung Lee
(Hewlett-Packard Laboratories, Singapore)
Mobile cloud computing enables numerous associated mobile users to access the abundant cloud computing resources, thereby complements the resource constrain of mobile devices. A fundamental issue in the mobile application platform is to make deployment decision for individual tasks when the battery life of the mobile device is a major concern for the mobile user's experience. We propose a deployment scheme to offload expensive computational tasks from thin, mobile devices to powered, powerful devices on the cloud so that we could prolong battery life for mobile devices, meanwhile provide rich user experiences for such mobile applications. We envision that the scheme can be extended to other type of smart devices such as smart printers, smart TVs or sensors where offloading tasks is required to trade-off between performance and battery life.

Article Search
A Preliminary Study of the Impact of Software Engineering on GreenIT
Adel Noureddine, Aurelien Bourdon, Romain Rouvoy, and Lionel Seinturier
(INRIA, France; University of Lille, France; IUF, France)
GreenIT has emerged as a discipline concerned with the optimization of software solutions with regards to their energy consumption. In this domain, most of state-of-the-art solutions offer limited or constraining approaches to monitor the energy consumption of a device or a process. In this paper, we therefore report on a runtime energy monitoring framework we developed to easily report on the energy consumption of system processes. Concretely, our approach adopts an OS-level library, called PowerAPI, which estimates the power consumption of processes according to different dimensions (CPU, network, etc.). In order to better understand potential energy leaks of legacy software, we use this library to study the impact of programming languages and algorithmic choices on the energy consumption. This preliminary study is based on an empirical evaluation of a eight implementations of the Towers of Hanoi problem.

Article Search
EoD Designer: A Computation Tool for Energy Optimization of Data Centers
Cyrill Grüter, Peter Gysel, Matthias Krebs, and Christoph Meier
(FHNW, Switzerland)
Total energy consumption in a data center is the sum of various components. We consider six main subsystems: Voltage transformer, uninterruptable power supply, IT equipment, computer room air handler, chiller and cooling tower. In this project a mathematical model for all six components was derived. Based on this model, a software tool was developed. It allows to simulate different variants of a data center and to minimize the total energy consumption by optimizing equipment and operating parameters. Thus potential energy savings can be evaluated. Finally the resulting reduction of operation expenses can directly be derived from the energy savings.

Article Search

Green Thinking at All Levels

Energy-Efficient Synchronization through Program Patterns
Yu David Liu
(SUNY Binghamton, USA)
This paper addresses energy consumption in multi-threaded programs. In particular, it demonstrates why synchronizations – a fundamental fabric of multi-core software – may lead to unnecessary energy consumption, and proposes a pattern-based compilation technique to improve energy efficiency. The key insight is that energy efficiency may be improved by adjusting the relative speed of individual threads participating in a synchronization, and different synchronization patterns can offer clues on how adjustments should be made.

Article Search
Energy Management in Embedded Systems: Towards a Taxonomy
Umesh Balaji Kothandapani Ramesh, Severine Sentilles, and Ivica Crnković
(Mälardalen University, Sweden)
Energy is an important constraint in embedded systems, and there exists a huge expertise in this domain about monitoring, managing and optimizing energy consumption in the computer systems. The aim of this paper is to present the energy management addressed in the research literature. Based on a systematic review, the paper presents a taxonomy of energy consumption and management in embedded systems.

Article Search
An Energy Consumption Model and Analysis Tool for Cloud Computing Environments
FeiFei Chen, Jean-Guy Schneider, Yun Yang, John Grundy, and Qiang He
(Swinburne University of Technology, Australia)
Cloud computing delivers computing as a utility to users worldwide. A consequence of this model is that cloud data centres have high deployment and operational costs, as well as significant carbon footprints for the environment. We need to develop Green Cloud Computing (GCC) solutions that reduce these deployment and operational costs and thus save energy and reduce adverse environmental impacts. In order to achieve this objective, a thorough understanding of the energy consumption patterns in complex Cloud environments is needed. We present a new energy consumption model and associated analysis tool for Cloud computing environments. We measure energy consumption in Cloud environments based on different runtime tasks. Empirical analysis of the correlation of energy consumption and Cloud data and computational tasks, as well as system performance, will be investigated based on our energy consumption model and analysis tool. Our research results can be integrated into Cloud systems to monitor energy consumption and support static or dynamic system-level optimisation.

Article Search
How to Measure Energy-Efficiency of Software: Metrics and Measurement Results
Timo Johann, Markus Dick, Stefan Naumann, and Eva Kern
(Trier University of Applied Sciences, Germany)
In the field of information and computer technology (ICT), saving energy has its focus set on energy efficient hardware and its operation. Recently, efforts have also been made in the area of computer software. However, the development of energy efficient software requires metrics, which measure the software’s energy consumption as well as models to monitor and minimize it. In software and software development processes they hardly exist. In this work we present a generic metric to measure software and a method to apply it in a software engineering process.

Article Search
Initial Explorations on Design Pattern Energy Usage
Cagri Sahin, Furkan Cayci, Irene Lizeth Manotas Gutiérrez, James Clause, Fouad Kiamilev, Lori Pollock, and Kristina Winbladh
(University of Delaware, USA)
As the use of computers has grown, so too has concern about the amount of power they consume. Data centers, for example, are limited in scalability as they struggle with soaring energy costs from many large companies relying on fast, reliable, and round-the-clock computing services. On large-scale computing clusters, like data centers, even a small drop in power consumption can have large effects. Across computing contexts, reducing power consumed by computers has become a major focus. In this paper, we present a new approach for mapping software design to power consumption and present empirical results of the approach on different software implementations. In particular, we compare the power profiles of software using design patterns against software not using design patterns as a way to explore how high-level design decisions affect an application's energy usage. We show how mappings between software design and power consumption profiles can provide software designers and developers with useful information about the power behavior of the software they are developing. The goal is for software engineers to use this information in designing and developing more energy efficient solutions.

Article Search
Aligning Economic Impact with Environmental Benefits: A Green Strategy Model
Qing Gu, Patricia Lago, and Simone Potenza
(VU University Amsterdam, Netherlands)
To achieve lower energy consumption many green strategies (e.g. virtualize applications and consolidate them on shared server machines, or optimize the usage of the private cloud by opening up to external consumers) have been discussed. In practice, however, the major incentive for a company to go green is reducing costs. While green strategies often focus on technical and environmental issues, they hardly address the economic impact that they may bring. If green strategies do not lead to an explicit (and significant) reduction of costs (hence increase in revenues) they are nice but not part of the business strategy of the company. In this paper we propose a green strategy model that provides decision makers with the information needed to decide on whether to take green strategies and eventually how to align them with their business strategies. This model provides a means to codify green strategies in such a way that the link between green strategies, their economic impact and green goals becomes explicit. We applied the model in a case study to codify 132 green actions collected from Dutch data centers. This exercise further confirmed the advantage of using the proposed model and helped us identifying future improvements.

Article Search
Architecting Ultra-Large-Scale Green Information Systems
Hong-Mei Chen and Rick Kazman
(University of Hawaii at Manoa, USA; SEI/CMU, USA)
As environmental sustainability issues have come to the societal and governmental forefront, a new breed of Green Information Systems (IS)—Ultra-Large-Scale (ULS) Green IS—is emerging. A ULS Green IS is an open socio-technical ecosystem that differs from traditional IS in scale, complexity and urgency. Design issues found in ULS systems, System of Systems, Edge-dominant, Metropolis systems and Green IS converge and multiply in the ULS Green IS context. This paper presents a design framework and an architecture analysis method, ECO-ARCH, to address the design of such systems. Through an action research study on architecting for Demand Response systems in the Smart Grid, this article illuminates the system characteristics of ULS Green IS and endorses a fundamental shift in design thinking for its design – from “bounded rationality” for problem solving to “expandable rationality” for design for the unknown and for innovation. ECO-ARCH advances existing software architecture analysis methods by complimenting expandable rationality design thinking with proven engineering techniques in a dual-level macroscopic-microscopic analysis. This tackles the unique architecting problems of ULS Green IS where many stakeholders are unknown and design goals are not provided, where no architecture pre-exists, where system behavior is non-deterministic and continuously evolving, and where co-creation with consumers and prosumers is essential to achieving triple bottom line goals.

Article Search

proc time: 0.26