Workshop GREENS 2014 – Author Index |
Contents -
Abstracts -
Authors
|
Bergen, Andreas |
![]() Andreas Bergen, Ronald Desmarais, Sudhakar Ganti, and Ulrike Stege (University of Victoria, Canada) With the proliferation of virtualization and cloud comput- ing, optimizing the power usage effectiveness of enterprise data centers has become a laudable goal and a critical re- quirement in IT operations all over the world. While a sig- nificant body of research exists to measure, monitor, and control the greenness level of hardware components, signif- icant research efforts are needed to relate hardware energy consumption to energy consumption due to program exe- cution. In this paper we report on our investigations to characterize power consumption profiles for different types of compute and memory intensive software applications. In particular, we focus on studying the effects of CPU loads on the power consumption of compute servers by monitoring rack power consumption in a data center. We conducted a series of experiments with a variety of processes of differ- ent complexity to understand and characterize the effect on power consumption. Combining processes of varying com- plexity with varying resource allocations produces different energy consumption levels. The challenge is to optimize pro- cess orchestration based on a power consumption framework to accrue energy savings. Our ultimate goal is to develop smart adaptive green computing techniques, such as adap- tive job scheduling and resource provisioning, to reduce over- all power consumption in data centers or clouds. ![]() |
|
Corral, Luis |
![]() Luis Corral, Anton B. Georgiev, Alberto Sillitti, and Giancarlo Succi (Free University of Bolzano, Italy) Measuring the energy spent by a software application is a problem that can be solved by having the proper hardware or software instruments. However, not always such tools are available or the provide resolution cannot fit the needs of the user, for instance when measuring a very small piece of code. This problem is particularly relevant on mobile software products, as they are developed to be executed in an environment limited in energy resources. Mobile software engineers should take special consideration on the energy consumption when designing and implementing an application. In this paper, we propose that the energy consumed by a unit of code can be approximated by the execution time. Using software benchmarks run with different data loads, we measured the execution time required to complete the job, and using a software tool to measure the energy spent during the execution of the benchmark, with the objective of finding a relationship among them. We observed that, regardless of the software benchmark, the data load injected and the programming language, of implementation the ratio between the execution time and the energy consumption remains consistent, opening the opportunity to develop techniques to approximate the energy consumption of mobile software based on execution time measurements. ![]() |
|
Desmarais, Ronald |
![]() Andreas Bergen, Ronald Desmarais, Sudhakar Ganti, and Ulrike Stege (University of Victoria, Canada) With the proliferation of virtualization and cloud comput- ing, optimizing the power usage effectiveness of enterprise data centers has become a laudable goal and a critical re- quirement in IT operations all over the world. While a sig- nificant body of research exists to measure, monitor, and control the greenness level of hardware components, signif- icant research efforts are needed to relate hardware energy consumption to energy consumption due to program exe- cution. In this paper we report on our investigations to characterize power consumption profiles for different types of compute and memory intensive software applications. In particular, we focus on studying the effects of CPU loads on the power consumption of compute servers by monitoring rack power consumption in a data center. We conducted a series of experiments with a variety of processes of differ- ent complexity to understand and characterize the effect on power consumption. Combining processes of varying com- plexity with varying resource allocations produces different energy consumption levels. The challenge is to optimize pro- cess orchestration based on a power consumption framework to accrue energy savings. Our ultimate goal is to develop smart adaptive green computing techniques, such as adap- tive job scheduling and resource provisioning, to reduce over- all power consumption in data centers or clouds. ![]() |
|
Fogdal, Thomas |
![]() Krzysztof Sierszecki, Michaela Steffens, Thomas Fogdal, Juha Savolainen, and Tommi Mikkonen (Danfoss, Denmark; Tampere University of Technology, Finland) One of the key challenges of green software is that various aspects have an impact to the overall energy consumption over the lifetime of a system operated by software. In particular, in the field of industrial applications, where embedded devices cooperate with many IT systems to make the industrial processes more efficient, to reduce waste or raw materials, and to save the environment, the concept of green software becomes unclear. In this paper, we address the green aspects of software in different phases – software construction, software execution, and software control in both inside an individual component and as a part of a complete industrial application. Furthermore, we demonstrate that the insight into system knowledge, not aspects related to software per se, is the key to create truly green software. Consequently, when considering truly software green, the focus is to be placed on the system level savings for embedded systems at the highest possible level where domain knowledge can be taken into account, not on software development or execution. ![]() |
|
Ganti, Sudhakar |
![]() Andreas Bergen, Ronald Desmarais, Sudhakar Ganti, and Ulrike Stege (University of Victoria, Canada) With the proliferation of virtualization and cloud comput- ing, optimizing the power usage effectiveness of enterprise data centers has become a laudable goal and a critical re- quirement in IT operations all over the world. While a sig- nificant body of research exists to measure, monitor, and control the greenness level of hardware components, signif- icant research efforts are needed to relate hardware energy consumption to energy consumption due to program exe- cution. In this paper we report on our investigations to characterize power consumption profiles for different types of compute and memory intensive software applications. In particular, we focus on studying the effects of CPU loads on the power consumption of compute servers by monitoring rack power consumption in a data center. We conducted a series of experiments with a variety of processes of differ- ent complexity to understand and characterize the effect on power consumption. Combining processes of varying com- plexity with varying resource allocations produces different energy consumption levels. The challenge is to optimize pro- cess orchestration based on a power consumption framework to accrue energy savings. Our ultimate goal is to develop smart adaptive green computing techniques, such as adap- tive job scheduling and resource provisioning, to reduce over- all power consumption in data centers or clouds. ![]() |
|
Georgiev, Anton B. |
![]() Luis Corral, Anton B. Georgiev, Alberto Sillitti, and Giancarlo Succi (Free University of Bolzano, Italy) Measuring the energy spent by a software application is a problem that can be solved by having the proper hardware or software instruments. However, not always such tools are available or the provide resolution cannot fit the needs of the user, for instance when measuring a very small piece of code. This problem is particularly relevant on mobile software products, as they are developed to be executed in an environment limited in energy resources. Mobile software engineers should take special consideration on the energy consumption when designing and implementing an application. In this paper, we propose that the energy consumed by a unit of code can be approximated by the execution time. Using software benchmarks run with different data loads, we measured the execution time required to complete the job, and using a software tool to measure the energy spent during the execution of the benchmark, with the objective of finding a relationship among them. We observed that, regardless of the software benchmark, the data load injected and the programming language, of implementation the ratio between the execution time and the energy consumption remains consistent, opening the opportunity to develop techniques to approximate the energy consumption of mobile software based on execution time measurements. ![]() |
|
Halfond, William G. J. |
![]() Ding Li and William G. J. Halfond (University of Southern California, USA) Developing energy efficient mobile applications is an impor- tant goal for software developers as energy usage can di- rectly affect the usability of a mobile device. Unfortunately, developers lack guidance as to how to improve the energy efficiency of their implementation and which practices are most useful. In this paper we conducted a small-scale em- pirical evaluation of commonly suggested energy-saving and performance-enhancing coding practices. In the evaluation we evaluated the degree to which these practices were able to save energy as compared to their unoptimized code coun- terparts. Our results provide useful guidance for mobile app developers. In particular, we found that bundling network packets up to a certain size and using certain coding prac- tices for reading array length information, accessing class fields, and performing invocations all led to reduced energy consumption. However, other practices, such as limiting memory usage had a very minimal impact on energy us- age. These results serve to inform the developer community about specific coding practices that can help lower the over- all energy consumption and improve the usability of their applications. ![]() |
|
Hindle, Abram |
![]() Kent Rasmussen, Alex Wilson, and Abram Hindle (University of Alberta, Canada) Extending battery life on mobile devices has become an important topic recently due to the increasing frequency of smartphone adoption. A primary component of smart phone energy consumption is the apps that run on these devices. Many apps have embedded advertising and web browser apps will show ads that are embedded on webpages. Other researchers have found that advertising libraries and advertisements tend to increase power usage. But is the converse true? If we use advertisement blocking software will we consume less energy, or will the overhead of ad-blocking consume more energy? This study seeks to determine the effects of advertisements on energy consumption, and the effects of attempts to block the advertisements. We compared different methods of blocking advertisements on an Android mobile phone platform and compared the power efficiency of these methods. We found many cases where ad-blocking software or methods resulted in increased power use. ![]() |
|
Li, Ding |
![]() Ding Li and William G. J. Halfond (University of Southern California, USA) Developing energy efficient mobile applications is an impor- tant goal for software developers as energy usage can di- rectly affect the usability of a mobile device. Unfortunately, developers lack guidance as to how to improve the energy efficiency of their implementation and which practices are most useful. In this paper we conducted a small-scale em- pirical evaluation of commonly suggested energy-saving and performance-enhancing coding practices. In the evaluation we evaluated the degree to which these practices were able to save energy as compared to their unoptimized code coun- terparts. Our results provide useful guidance for mobile app developers. In particular, we found that bundling network packets up to a certain size and using certain coding prac- tices for reading array length information, accessing class fields, and performing invocations all led to reduced energy consumption. However, other practices, such as limiting memory usage had a very minimal impact on energy us- age. These results serve to inform the developer community about specific coding practices that can help lower the over- all energy consumption and improve the usability of their applications. ![]() |
|
Malakuti, Somayeh |
![]() Somayeh Malakuti and Claas Wilke (TU Dresden, Germany) To effectively extend legacy applications with energy-awareness functionality, dedicated modularization mechanisms are required. This paper introduces the GreenDev framework, which integrates energy testing and event-based modularization for this matter. Energy testing facilitates identifying the energy-related interfaces of applications to the energy-awareness functionality, and event-based modularization facilitates modularizing this functionality from the base functionality of the applications. To maintain loose coupling among these, GreenDev offers a dedicated interface definition language, which enables defining the interfaces abstractly from the actual implementation of the applications. The applications are automatically augmented with these interfaces. We illustrate the applicability of GreenDev in implementing an energy-aware mobile emailing app. ![]() |
|
Mikkonen, Tommi |
![]() Krzysztof Sierszecki, Michaela Steffens, Thomas Fogdal, Juha Savolainen, and Tommi Mikkonen (Danfoss, Denmark; Tampere University of Technology, Finland) One of the key challenges of green software is that various aspects have an impact to the overall energy consumption over the lifetime of a system operated by software. In particular, in the field of industrial applications, where embedded devices cooperate with many IT systems to make the industrial processes more efficient, to reduce waste or raw materials, and to save the environment, the concept of green software becomes unclear. In this paper, we address the green aspects of software in different phases – software construction, software execution, and software control in both inside an individual component and as a part of a complete industrial application. Furthermore, we demonstrate that the insight into system knowledge, not aspects related to software per se, is the key to create truly green software. Consequently, when considering truly software green, the focus is to be placed on the system level savings for embedded systems at the highest possible level where domain knowledge can be taken into account, not on software development or execution. ![]() |
|
Penzenstadler, Birgit |
![]() Ankita Raturi, Birgit Penzenstadler, Bill Tomlinson, and Debra Richardson (University of California at Irvine, USA) Requirements engineers are in a unique position to encourage the consideration of sustainability at a formative phase in the software development life cycle. In this paper, we look at how we can develop sustainability as a non-functional requirement (NFR). We describe an NFR framework that is informed by sustainability models and discuss how it can be used to appropriately elicit and describe sustainability related requirements of the software system to be developed. We outline a roadmap for how we may integrate sustain- ability in requirements engineering from a theoretical NFR framework to an applicable software quality and relevant software standards. ![]() |
|
Rasmussen, Kent |
![]() Kent Rasmussen, Alex Wilson, and Abram Hindle (University of Alberta, Canada) Extending battery life on mobile devices has become an important topic recently due to the increasing frequency of smartphone adoption. A primary component of smart phone energy consumption is the apps that run on these devices. Many apps have embedded advertising and web browser apps will show ads that are embedded on webpages. Other researchers have found that advertising libraries and advertisements tend to increase power usage. But is the converse true? If we use advertisement blocking software will we consume less energy, or will the overhead of ad-blocking consume more energy? This study seeks to determine the effects of advertisements on energy consumption, and the effects of attempts to block the advertisements. We compared different methods of blocking advertisements on an Android mobile phone platform and compared the power efficiency of these methods. We found many cases where ad-blocking software or methods resulted in increased power use. ![]() |
|
Raturi, Ankita |
![]() Ankita Raturi, Birgit Penzenstadler, Bill Tomlinson, and Debra Richardson (University of California at Irvine, USA) Requirements engineers are in a unique position to encourage the consideration of sustainability at a formative phase in the software development life cycle. In this paper, we look at how we can develop sustainability as a non-functional requirement (NFR). We describe an NFR framework that is informed by sustainability models and discuss how it can be used to appropriately elicit and describe sustainability related requirements of the software system to be developed. We outline a roadmap for how we may integrate sustain- ability in requirements engineering from a theoretical NFR framework to an applicable software quality and relevant software standards. ![]() |
|
Richardson, Debra |
![]() Ankita Raturi, Birgit Penzenstadler, Bill Tomlinson, and Debra Richardson (University of California at Irvine, USA) Requirements engineers are in a unique position to encourage the consideration of sustainability at a formative phase in the software development life cycle. In this paper, we look at how we can develop sustainability as a non-functional requirement (NFR). We describe an NFR framework that is informed by sustainability models and discuss how it can be used to appropriately elicit and describe sustainability related requirements of the software system to be developed. We outline a roadmap for how we may integrate sustain- ability in requirements engineering from a theoretical NFR framework to an applicable software quality and relevant software standards. ![]() |
|
Savolainen, Juha |
![]() Krzysztof Sierszecki, Michaela Steffens, Thomas Fogdal, Juha Savolainen, and Tommi Mikkonen (Danfoss, Denmark; Tampere University of Technology, Finland) One of the key challenges of green software is that various aspects have an impact to the overall energy consumption over the lifetime of a system operated by software. In particular, in the field of industrial applications, where embedded devices cooperate with many IT systems to make the industrial processes more efficient, to reduce waste or raw materials, and to save the environment, the concept of green software becomes unclear. In this paper, we address the green aspects of software in different phases – software construction, software execution, and software control in both inside an individual component and as a part of a complete industrial application. Furthermore, we demonstrate that the insight into system knowledge, not aspects related to software per se, is the key to create truly green software. Consequently, when considering truly software green, the focus is to be placed on the system level savings for embedded systems at the highest possible level where domain knowledge can be taken into account, not on software development or execution. ![]() |
|
Sierszecki, Krzysztof |
![]() Krzysztof Sierszecki, Michaela Steffens, Thomas Fogdal, Juha Savolainen, and Tommi Mikkonen (Danfoss, Denmark; Tampere University of Technology, Finland) One of the key challenges of green software is that various aspects have an impact to the overall energy consumption over the lifetime of a system operated by software. In particular, in the field of industrial applications, where embedded devices cooperate with many IT systems to make the industrial processes more efficient, to reduce waste or raw materials, and to save the environment, the concept of green software becomes unclear. In this paper, we address the green aspects of software in different phases – software construction, software execution, and software control in both inside an individual component and as a part of a complete industrial application. Furthermore, we demonstrate that the insight into system knowledge, not aspects related to software per se, is the key to create truly green software. Consequently, when considering truly software green, the focus is to be placed on the system level savings for embedded systems at the highest possible level where domain knowledge can be taken into account, not on software development or execution. ![]() |
|
Sillitti, Alberto |
![]() Luis Corral, Anton B. Georgiev, Alberto Sillitti, and Giancarlo Succi (Free University of Bolzano, Italy) Measuring the energy spent by a software application is a problem that can be solved by having the proper hardware or software instruments. However, not always such tools are available or the provide resolution cannot fit the needs of the user, for instance when measuring a very small piece of code. This problem is particularly relevant on mobile software products, as they are developed to be executed in an environment limited in energy resources. Mobile software engineers should take special consideration on the energy consumption when designing and implementing an application. In this paper, we propose that the energy consumed by a unit of code can be approximated by the execution time. Using software benchmarks run with different data loads, we measured the execution time required to complete the job, and using a software tool to measure the energy spent during the execution of the benchmark, with the objective of finding a relationship among them. We observed that, regardless of the software benchmark, the data load injected and the programming language, of implementation the ratio between the execution time and the energy consumption remains consistent, opening the opportunity to develop techniques to approximate the energy consumption of mobile software based on execution time measurements. ![]() |
|
Steffens, Michaela |
![]() Krzysztof Sierszecki, Michaela Steffens, Thomas Fogdal, Juha Savolainen, and Tommi Mikkonen (Danfoss, Denmark; Tampere University of Technology, Finland) One of the key challenges of green software is that various aspects have an impact to the overall energy consumption over the lifetime of a system operated by software. In particular, in the field of industrial applications, where embedded devices cooperate with many IT systems to make the industrial processes more efficient, to reduce waste or raw materials, and to save the environment, the concept of green software becomes unclear. In this paper, we address the green aspects of software in different phases – software construction, software execution, and software control in both inside an individual component and as a part of a complete industrial application. Furthermore, we demonstrate that the insight into system knowledge, not aspects related to software per se, is the key to create truly green software. Consequently, when considering truly software green, the focus is to be placed on the system level savings for embedded systems at the highest possible level where domain knowledge can be taken into account, not on software development or execution. ![]() |
|
Stege, Ulrike |
![]() Andreas Bergen, Ronald Desmarais, Sudhakar Ganti, and Ulrike Stege (University of Victoria, Canada) With the proliferation of virtualization and cloud comput- ing, optimizing the power usage effectiveness of enterprise data centers has become a laudable goal and a critical re- quirement in IT operations all over the world. While a sig- nificant body of research exists to measure, monitor, and control the greenness level of hardware components, signif- icant research efforts are needed to relate hardware energy consumption to energy consumption due to program exe- cution. In this paper we report on our investigations to characterize power consumption profiles for different types of compute and memory intensive software applications. In particular, we focus on studying the effects of CPU loads on the power consumption of compute servers by monitoring rack power consumption in a data center. We conducted a series of experiments with a variety of processes of differ- ent complexity to understand and characterize the effect on power consumption. Combining processes of varying com- plexity with varying resource allocations produces different energy consumption levels. The challenge is to optimize pro- cess orchestration based on a power consumption framework to accrue energy savings. Our ultimate goal is to develop smart adaptive green computing techniques, such as adap- tive job scheduling and resource provisioning, to reduce over- all power consumption in data centers or clouds. ![]() |
|
Succi, Giancarlo |
![]() Luis Corral, Anton B. Georgiev, Alberto Sillitti, and Giancarlo Succi (Free University of Bolzano, Italy) Measuring the energy spent by a software application is a problem that can be solved by having the proper hardware or software instruments. However, not always such tools are available or the provide resolution cannot fit the needs of the user, for instance when measuring a very small piece of code. This problem is particularly relevant on mobile software products, as they are developed to be executed in an environment limited in energy resources. Mobile software engineers should take special consideration on the energy consumption when designing and implementing an application. In this paper, we propose that the energy consumed by a unit of code can be approximated by the execution time. Using software benchmarks run with different data loads, we measured the execution time required to complete the job, and using a software tool to measure the energy spent during the execution of the benchmark, with the objective of finding a relationship among them. We observed that, regardless of the software benchmark, the data load injected and the programming language, of implementation the ratio between the execution time and the energy consumption remains consistent, opening the opportunity to develop techniques to approximate the energy consumption of mobile software based on execution time measurements. ![]() |
|
Tomlinson, Bill |
![]() Ankita Raturi, Birgit Penzenstadler, Bill Tomlinson, and Debra Richardson (University of California at Irvine, USA) Requirements engineers are in a unique position to encourage the consideration of sustainability at a formative phase in the software development life cycle. In this paper, we look at how we can develop sustainability as a non-functional requirement (NFR). We describe an NFR framework that is informed by sustainability models and discuss how it can be used to appropriately elicit and describe sustainability related requirements of the software system to be developed. We outline a roadmap for how we may integrate sustain- ability in requirements engineering from a theoretical NFR framework to an applicable software quality and relevant software standards. ![]() |
|
Wilke, Claas |
![]() Somayeh Malakuti and Claas Wilke (TU Dresden, Germany) To effectively extend legacy applications with energy-awareness functionality, dedicated modularization mechanisms are required. This paper introduces the GreenDev framework, which integrates energy testing and event-based modularization for this matter. Energy testing facilitates identifying the energy-related interfaces of applications to the energy-awareness functionality, and event-based modularization facilitates modularizing this functionality from the base functionality of the applications. To maintain loose coupling among these, GreenDev offers a dedicated interface definition language, which enables defining the interfaces abstractly from the actual implementation of the applications. The applications are automatically augmented with these interfaces. We illustrate the applicability of GreenDev in implementing an energy-aware mobile emailing app. ![]() |
|
Wilson, Alex |
![]() Kent Rasmussen, Alex Wilson, and Abram Hindle (University of Alberta, Canada) Extending battery life on mobile devices has become an important topic recently due to the increasing frequency of smartphone adoption. A primary component of smart phone energy consumption is the apps that run on these devices. Many apps have embedded advertising and web browser apps will show ads that are embedded on webpages. Other researchers have found that advertising libraries and advertisements tend to increase power usage. But is the converse true? If we use advertisement blocking software will we consume less energy, or will the overhead of ad-blocking consume more energy? This study seeks to determine the effects of advertisements on energy consumption, and the effects of attempts to block the advertisements. We compared different methods of blocking advertisements on an Android mobile phone platform and compared the power efficiency of these methods. We found many cases where ad-blocking software or methods resulted in increased power use. ![]() |
24 authors
proc time: 0.77