Conference Paper

Towards application-specific impact specifications and GreenSLAs

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

As the trend towards clouds and the delivery of software applications “as a service” continues, the importance of controlling, and if possible reducing, the environmental impact of the supporting data centers assumes ever more importance. However, increasing efficiency alone will not necessarily have the desired impact if computing service consumption levels grow out of control. Increased efficiency needs to be accompanied by responsible usage, which in turns requires users to be aware of the impact of their computing consumption choices. This paper makes a first step in this direction by proposing some techniques for making statements about the environmental impact of specific applications based on formal, but human readable, specifications of their functionality. It then shows how these techniques can be extended to support the definition of application specific, GreenSLAs (Service Level Agreements) which allow the contract between computing service suppliers and consumers to include constraints on the acceptable environmental impact (e.g. energy usage or CO2 emissions).

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... An application oriented green SLAs [4] which allow the contract between computing service providers and consumers to include constraints on the acceptable environmental impact.These papers focused on data centres that exploit green energy [5] [11]. Among these, [6], [7], [8] studied the scheduling of deferrable batch jobs inorder to increase the use of reusable energy. ...
Article
Full-text available
The accelerated growth of the cloud eco-system is leading to the progress of new services, innovative ideas for the service replen- ishing and the newest interaction models both among the cloud providers and the customers which take advantage of the cloud resources. SLAs are one of the factors which allow for different interactions by keeping the objectives over privacy,QoS attributes and security constraints driving towards QoP attributes, the description of actions is needed in order to deliver the services ac- cording to the QoS attributes as expected by the customers. Energy aware SLAs extends the existing SLA agreements in order to include energy and carbon aware parameters. In this paper we propose an approach in order to relax certain jobs in a standardized way to obtain high energy consumption without disturbing the efficiency and availability of the system especially during the peak load times. The results for the above proposal are being discussed in this paper and were able to find that it is energy efficient.
Chapter
Sustainability concerns have been noticed as the most critical asset worldwide to allow the next generations to survive in a world better than the one we live in today. Many initiatives are determined to monitor, enhance technology, and avoid environmental degradation. The financial sector is one of these players who have social responsibility at the strategic level of the organizations. In past years digital transformation of the banks and fintech helped to achieve the sustainability aspects. Therefore, this research aims to discover the practices of sustainability applied during the software development process and software product management of the financial sector through multiple case studies. Five organizations were interviewed, 80 practices were extracted and grouped into six categories related to social, environmental, and economic sustainability aspects.KeywordsSustainabilitySoftware engineeringGreen ITSoftware product managementSocial responsibility
Chapter
Green specifications provide a foundation for reducing the environmental impact of computing applications and improving the consumption behavior of users by providing a clear and precise specification of the environmental impact of specific services. They can either be used to specify the actual behavior and environmental impact of existing services or to define the requirements that a to-be-built service must fulfill. Green specifications describe the properties of a service from distinct viewpoints such as a structural viewpoint which describes the data types and external components that the service uses, a functional viewpoint which describes the effects of the service's operations using pre- and post- conditions and a behavioral viewpoint which describes the externally visible states and transitions exhibited by the service. These are augmented with non-functional information describing the environmental properties of, or constraints on, the service. In this chapter we provide an introduction to green specifications and give a concrete example of their use to specify a Video on Demand (VoD) service.
Chapter
Green specifications provide a foundation for reducing the environmental impact of computing applications and improving the consumption behavior of users by providing a clear and precise specification of the environmental impact of specific services. They can either be used to specify the actual behavior and environmental impact of existing services or to define the requirements that a to-be-built service must fulfill. Green specifications describe the properties of a service from distinct viewpoints such as a structural viewpoint which describes the data types and external components that the service uses, a functional viewpoint which describes the effects of the service's operations using pre- and post- conditions and a behavioral viewpoint which describes the externally visible states and transitions exhibited by the service. These are augmented with non-functional information describing the environmental properties of, or constraints on, the service. In this chapter we provide an introduction to green specifications and give a concrete example of their use to specify a Video on Demand (VoD) service.
Article
Full-text available
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
Full-text available
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.
Conference Paper
Full-text available
Data centres are powerful ICT facilities which constantly evolve in size, complexity, and power consumption. At the same time users' and operators' requirements become more and more complex. However, existing data centre frameworks do not typically take energy consumption into account as a key parameter of the data centre's configuration. To lower the power consumption while fulfilling performance requirements we propose a flexible and energy-aware framework for the (re)allocation of virtual machines in a data centre. The framework, being independent from the data centre management system, computes and enacts the best possible placement of virtual machines based on constraints expressed through service level agreements. The framework's flexibility is achieved by decoupling the expressed constraints from the algorithms using the Constraint Programming (CP) paradigm and programming language, basing ourselves on a cluster management library called Entropy. Finally, the experimental and simulation results demonstrate the effectiveness of this approach in achieving the pursued energy optimization goals.
Conference Paper
Full-text available
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
Full-text available
tangible benefits IT brings, but also because the underlying technological trends proceed at easily measurable, remarkably predictable, and unusually rapid rates. The number of transistors on a chip has doubled more or less every two years for decades, a trend that is popularly (but often imprecisely) encapsulated as “Moore’s law”. This article explores the relationship between the performance of computers and the electricity needed to deliver that performance. As shown in Figure ES-1, computations per kWh grew about as fast as performance for desktop computers starting in 1981, doubling every 1.5 years, a pace of change in computational efficiency comparable to that from 1946 to the present. Computations per kWh grew even more rapidly during the vacuum tube computing era and during the transition from tubes to transistors but more slowly during the era of discrete transistors. As expected, the transition from tubes to transistors shows a large jump in computations per kWh. In 1985, the physicist Richard Feynman identified a factor of one hundred billion (10 11) possible theoretical improvement in the electricity used per computation. Since that time computations per kWh have increased by less than five orders of magnitude, leaving
Conference Paper
Full-text available
Although they are significantly different in how they decompose and conceptualize software systems, one thing that all advanced software engineering paradigms have in common is that they increase the number of different views involved in visualizing a system. Managing these different views can be challenging even when a paradigm is used independently, but when they are used together the number of views and inter-dependencies quickly becomes overwhelming. In this paper we present a novel approach for organizing and generating the different views used in advanced software engineering methods that we call Orthographic Software Modeling (OSM). This provides a simple metaphor for integrating different development paradigms and for leveraging domain specific languages in software engineering. Development environments that support OSM essentially raise the level of abstraction at which developers interact with their tools by hiding the idiosyncrasies of specific editors, storage choices and artifact organization policies. The overall benefit is to significantly simplify the use of advanced software engineering methods.
Conference Paper
Full-text available
In this paper, an approach that uses dynamic voltage scaling (DVS) to reduce the configuration energy of runtime reconfigurable devices is proposed. The basic idea is to use configuration prefetching and parallelism to create excessive system idle time and apply DVS on the configuration process when such idle time can be utilized. A genetic algorithm is developed to solve the task scheduling and voltage assignment problem. With real applications, the results show that up to 19.3% of configuration energy can be reduced. When considering the reduction of the configuration energy, the results show that using more computation resources is more favorable when the configuration latency is relatively small, and using more configuration controllers is more favorable for relatively large latency
Conference Paper
Full-text available
Given the projected growth in IT over the coming decades it is important that the supply of, and demand for, computing services be made as environmentally friendly as possible. One of the key technologies for achieving this will undoubtedly be cloud computing which opens up many new opportunities for streamlining the way computing services are delivered and used. Several research projects have therefore recently started to examine ways of improving the efficiency of cloud computing infrastructures and of understanding the energy efficiency of computing algorithms. However, to date these have mainly focused on increasing the efficiency of cloud computing services at the relatively low "platform" and "infrastructure" levels of abstraction at which they are typically offered today. In this paper we argue that to maximize the environmental benefits of cloud computing, both from the demand as well as the supply point of view, it is necessary to raise the level of abstraction at which cloud services are delivered and consumed. To this end, we introduce the vision of "Modelling as a Service (MaaS)" and explain how it provides an essential foundation for reducing the environmental impact of computing services.
Conference Paper
Full-text available
Most mobile and embedded devices are battery powered. Hence, their uptime depends on the energy consumption of the used components. Developers made severe effort to optimize hardware components in order to reduce their energy consumption. However, in this paper we show that one also has to consider energy awareness in terms of software. In this study we focus on sorting algorithms, which are not only used directly by the user of a device but also very often implicitly by other algorithms. Our experiments show,that different sorting algorithms consume different amounts of energy. In detail, the experiments show that there is no direct correlation between the time complexity of an algorithm and its energy consumption.
Conference Paper
Full-text available
The product line and component-based approaches to software engineering both hold the potential to significantly increase the level of reuse in industrial software development and maintenance. They also have complementary strengths, since they address the problem of reuse at opposite ends of the granularity spectrum - product line development essentially supports "reuse in the large" while compo- nent based development supports "reuse in the small". This paper describes a method, KobrA, which cleanly integrates the two paradigms into a systematic, unified approach to software development and maintenance. Key synergies resulting from this integration include support for the rapid and flexible instantia- tion of system variants, and the provision of methodological support for compo- nent-based framework development.
Article
Full-text available
Eds. Pierson, JM.; Hlavacs, H. Proceedings of the COST Action IC804 on Energy Efficiency in Large Scale Distributed Systems, 1st Year, 88 - 92 Protecting the environment by saving energy and thus reducing carbon dioxide emissions is one of today’s hottest and most challenging topics and is of a rapidly growing importance in the computing domain. The motivation and reasons for optimizing energy consumption from ecological and business perspectives are clear. However, the technical realization still is way behind expectations. One reason might be that technical problems range from pure hardware issues (e.g., low-power devices, energy harvesting, etc.) to software to cooling issues. This paper discusses recent findings and first ideas regarding policies and strategies for energy optimization and the development of a generic plug-in for managing data centers, accompanied by the introduction of the concept of “Green Service Level Agreements (GSLA)”. We discuss the general structure (generic architecture) of the plug-in and sketch some of the embedded policies. It is also to be noted that all results are part of the recently started FIT4Green project, funded by the European Union.
Conference Paper
Full-text available
Recent progress in the field of Web services has made it possible to integrate inter-organizational and heterogeneous services on the Web at runtime. If a user request cannot be satisfied by a single Web service, it is (or should be) possible to combine existing services in order to fulfill the request. However, there are several challenging issues that need to be addressed before this can be realized in the true sense. One of them is the ability to ensure end-to-end QoS of a Web service composition. There is a need for a SLA negotiation system which can ensure the autonomous QoS negotiation of Web service compositions irrespective of the application domain. In this paper we propose agent-based coordinated-negotiation architecture to ensure collective functionality, end-to-end QoS and the stateful coordination of complex services. We describe a prototype implementation to demonstrate how this architecture can be used in different application domains. We have also demonstrated how the negotiation system on the service provider's side can be implemented both as an agent based negotiation system and as a Web service based negotiation system.
Article
Full-text available
Accelerating the software development process by assembling new applications from existing software assets has been a goal of the IT industry for many years. However, most of today's systematic software reuse uses heavyweight approaches such as product-line engineering. Now, with the explosion in open source software repositories and the advent of a new generation of powerful software search engines, this is set to change. Code Conjurer is an Eclipse plug-in that extracts interface and test information from a developer's coding activities and uses this information to issue test-driven searches to a code-search engine. It presents components matching the developer's needs as reuse recommendations without disturbing the development work. Automated dependency resolution then allows selected components to be woven into the current project with minimal manual effort.
Chapter
How does cloud computing differ from grid computing? Grid computing usually involves scheduled scientific or engineering computing done on a distributed network of computers and/or supercomputers. The applications for clouds are often a bit more mundane but also are more encompassing than grids. The basic idea is that organizations can rent time on an outside provider’s data center(s) to host applications, software and services that are more traditionally provided by in-house computing facilities. Both grids and cloud computing are accessed through the Internet.
Article
1st International Conference on Energy-Efficient Computing and Networking, e-energy 2010, Passau, 13 - 15 Apr. 2010
Conference Paper
Rechenzentren gehören weltweit zu den Großabnehmern von Energie. Ihr Anteil am globalen Verbrauch beträgt etwa 1,5% - Tendenz steigend. Dieser Trend wird vor allem durch die zunehmende Auslagerung von IT Diensten aus den Unternehmen, durch das Cloud Computing Paradigma und eine allgemein ansteigende Nachfrage nach IT-Dienstleistungen hervorgerufen. So wird bezüglich der CO2-Emissionen der deutschen IKT Branche geschätzt, dass “die größte Zuwachsrate […] bei den Rechenzentren entstehen. Die vorliegende Studie geht davon aus, dass diese 2020 absolut um 25 % höhere Emissionen verursachen als 2007.“ [1] Gleichzeitig ist der Markt der Rechenzentren geprägt von einer deutlich geringeren Stückelung als der ebenfalls expandierende PC-Sektor, denn hier fragt eine relative geringe Anzahl von Firmen einen Großteil der Strommenge der IKT-Branche nach. Diesen Bedarf decken die Energieversorger bisher flexibel mit einem jeweils unterschiedlichen Strommix, ohne dass es jenseits der verbrauchsabhängigen Rahmenverträge eine Interaktion zwischen Energieversorger und Rechenzentrum gäbe. Die den Rechenzentren zugeschriebenen Emissionen entstehen (von seltenen Ausnahmen abgesehen) tatsächlich bei den Energieversorgern. Das FP7 EU-Projekt All4Green sieht Energieversorger, Rechenzentren sowie deren Kunden als ein „Ökosystem“, das durch technische und wirtschaftliche Kollaboration in die Lage versetzt werden soll, vorrübergehend 10-20% Energie in einem bereits Hard- und Software-optimierten Rechenzentrum einzusparen und damit die nötige Spizenlastabdeckung des Stromverbrauchs zu reduzieren. Eine Maßnahme von 2 Stunden könnte so – in ganz Deutschland bei allen mittleren und großen Rechenzentren eingesetzt, dieselbe Menge CO2 einsparen, die etwa 80.0000 Single Haushalte in der gleichen Zeit produzieren.
Article
As part of the growing pervasiveness of information technology (IT) in the global economy, the last decade has seen a trend of outsourcing IT services, first into traditional data centres, and nowadays more and more into "fuzzy structures" (aka the cloud). This trend has led to the expansion of the IT service business, to the emergence of the data centre industry - and at the same time to a dramatic increase of the energy consumption of data centres. Since the services provided by data centres are typically ruled by performance-oriented SLAs energy awareness is only of lower ranking importance for the service provision in a data centre. GreenSLAs can help counteracting this problem by offering data centres new degrees of freedom to re-organize their service provision in an energy-efficient way. This paper suggests outlines and first ideas for the design of GreenSLAs, based on the key vision that these need to present a win-win situation for both data centre service-provider and customer. The technical and QoS related implications of energy efficiency strategies are analyzed, and it is shown how the findings can be utilized for the design of GreenSLAs.
Article
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
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
The resource and power consumption of ICT is still increasing, but also the benefits of ICT, e.g. in finding more efficient solutions for environmental problems. To date, it is not clear, whether the resource and energy savings through ICT overbalance the resource and energy consumption by ICT, or not. Up to now, manifold efforts of Green IT address the environmental aspects of sustainability considering computer hardware. However, there is still a lack of models, descriptions or realizations in the area of computer software and software process models. In our contribution, we first propose definitions of the terms “Green and Sustainable Software” and “Green and Sustainable Software Engineering”, then we outline a conceptual reference model, the GREENSOFT Model. This model includes a cradle-to-grave product life cycle model for software products, sustainability metrics and criteria for software, software engineering extensions for sustainably sound software design and development, as well as appropriate guidance.
Conference Paper
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 nonfunctional 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 nonfunctional behavior of software components providing simple sorting functionality.
Article
With the wide adoption of the Cloud, there re-mains an open challenge to provide more dependable, trans-parent, and trustworthy provision of services. Service terms are typically defined in the Service Level Agreement (SLA) binding both service providers and users. For the service user, there is a need to ensure that s/he is enjoying the agreed level of service and any violations are reported accordingly. For the service provider, there is a need to manage a resilient infrastructure capable of meeting SLA terms and inform strategies for maximising profit and resource utilisation. The massive size, dynamism and unpredictability of Cloud architectures makes these goals difficult to accomplish using classic Service Level Management (SLM) approaches. In this paper, we motivate the need for novel dynamic and decentralised approaches for the design of SLM. Requirements and key design decisions for the new SLM are described. Also, a conceptual architecture for realising these requirements is presented. We roadmap and discuss research directions, which can benefit from the new SLM.
Carbon Usage Effectiveness (CUE): A Green Grid Data Center Sustainability Metric, White Paper #32 The Green Grid
  • C Belady
  • D Azevedo
  • M Patterson
  • J Pouchet
  • R Tipley
C. Belady, D. Azevedo, M. Patterson, J. Pouchet, R. Tipley, Carbon Usage Effectiveness (CUE): A Green Grid Data Center Sustainability Metric, White Paper #32 The Green Grid, 2010
Ws-agreement specication version 1.0 exp., 2010. Open Grid Forum
  • D Battré
  • P Wieder
  • W Ziegler
D. Battré, P. Wieder, and W. Ziegler. Ws-agreement specication version 1.0 exp., 2010. Open Grid Forum
Modelling as a Service (Maas), 1 st EEE International Workshop on the Future of Software Engineering IN and FOR the Cloud
  • C Atkinson
  • T Schulze
  • S Klingert
C. Atkinson, T. Schulze, S. Klingert; Modelling as a Service (Maas), 1 st EEE International Workshop on the Future of Software Engineering IN and FOR the Cloud. In conj. with IEEE Cloud 2011 and SCC2011. Washington D.C., USA.