2,457 research outputs found

    Leveraging Energy Efficiency to Software Users

    Get PDF
    The Focus of the GREENS workshop is the engineering of green and sustainable software. Our goal is to bring together academics and practitioners to discuss research initiatives, challenges, ideas, and results in this critically important area of the software industry. This second edition of the workshop was held at ICSE 2013 in San Francisco, CA, USA. The theme of GREENS 2013 is Leveraging "Energy Efficiency to Software Users." It featured a keynote talk, ten research papers and three breakout sessions that discussed topics that ranged from qualities vs. energy efficiency and environmental sustainability, to green models and views for (software) products/process and to stakeholders, relevant metrics and measurements. In this report, we present the themes of the workshop, and summarize the results of the discussions held in the breakout sessions, as well as the identified research challenges for future investigation.</jats:p

    On the effect of exploiting gpus for a more Eco-sustainable lease of life

    Get PDF
    It has been estimated that about 2% of global carbon dioxide emissions can be attributed to IT systems. Green (or sustainable) computing refers to supporting business critical computing needs with the least possible amount of power. This phenomenon changes the priorities in the design of new software systems and in the way companies handle existing ones. In this paper, we present the results of a research project aimed to develop a migration strategy to give an existing software system a new and more eco-sustainable lease of life. We applied a strategy for migrating a subject system that performs intensive and massive computation to a target architecture based on a Graphics Processing Unit (GPU). We validated our solution on a system for path finding robot simulations. An analysis on execution time and energy consumption indicated that: (i) the execution time of the migrated system is less than the execution time of the original system; and (ii) the migrated system reduces energy waste, so suggesting that it is more eco-sustainable than its original version. Our findings improve the body of knowledge on the effect of using the GPU in green computing. © 2015 World Scientific Publishing Company

    Potentials of Green Coding -- Findings and Recommendations for Industry, Education and Science -- Extended Paper

    Full text link
    Progressing digitalization and increasing demand and use of software cause rises in energy- and resource consumption from information and communication technologies (ICT). This raises the issue of sustainability in ICT, which increasingly includes the sustainability of the software products themselves and the art of creating sustainable software. To this end, we conducted an analysis to gather and present existing literature on three research questions relating to the production of ecologically sustainable software ("Green Coding") and to provide orientation for stakeholders approaching the subject. We compile the approaches to Green Coding and Green Software Engineering (GSE) that have been published since 2010. Furthermore, we considered ways to integrate the findings into existing industrial processes and higher education curricula to influence future development in an environmentally friendly way.Comment: This document is the extended version of the literature report published at the German Informatik Conference titled "Potentials of Green Coding - Findings and Recommendations for Industry, Education and Science". This document has since been updated and expanded to include relevant source

    On Reducing the Energy Consumption of Software: From Hurdles to Requirements

    Get PDF
    International audienceBackground. As software took control over hardware in many domains, the question of the energy footprint induced by the software is becoming critical for our society, as the resources powering the underlying infrastructure are finite. Yet, beyond this growing interest, energy consumption remains a difficult concept to master for a developer.Aims. The purpose of this study is to better understand the root causes that prevent software energy consumption to be more widely adopted by developers and companies.Method. To investigate this issue, this paper reports on a qualitative study we conducted in an industrial context. We applied an in-depth analysis of the interviews of 10 experienced developers and summarized a set of implications.Results. We argue that our study delivers i) insightful feedback on how green software design is considered among the interviewed developers and ii) a set of findings to build helpful tools, motivate further research, and establish better development strategies to promote green software design.Conclusion. This paper covers an industrial case study of developers' awareness of green software design and how to promote it within the company. While it might not be generalizable for any company, we believe our results deliver a common body of knowledge with implications to be considered for similar cases and further researches

    Helping programmers improve the energy efficiency of source code

    Get PDF
    This paper briefly proposes a technique to detect energy inefficient fragments in the source code of a software system. Test cases are executed to obtain energy consumption measurements, and a statistical method, based on spectrum-based fault localization, is introduced to relate energy consumption to the system's source code. The result of our technique is an energy ranking of source code fragments pointing developers to possible energy leaks in their code.This work is financed by the ERDF European Regional Development Fund through the Operational Programme for Competitiveness and Internationalisation - COMPETE 2020 Programme and by National Funds through the Portuguese funding agency, FCT - Fundacao para a Ciencia e a Tecnologia within project POCI-01-0145-FEDER-016718 and UID/CEC/04516/2013; and by FLAD/NSF under the project Software Repositories for Green Computing, ref. 300/2015. The first author is also sponsored by FCT grant SFRH/BD/112733/2015

    Energyware engineering: techniques and tools for green software development

    Get PDF
    Tese de Doutoramento em Informática (MAP-i)Energy consumption is nowadays one of the most important concerns worldwide. While hardware is generally seen as the main culprit for a computer’s energy usage, software too has a tremendous impact on the energy spent, as it can cancel the efficiency introduced by the hardware. Green Computing is not a newfield of study, but the focus has been, until recently, on hardware. While there has been advancements in Green Software techniques, there is still not enough support for software developers so they can make their code more energy-aware, with various studies arguing there is both a lack of knowledge and lack of tools for energy-aware development. This thesis intends to tackle these two problems and aims at further pushing forward research on Green Software. This software energy consumption issue is faced as a software engineering question. By using systematic, disciplined, and quantifiable approaches to the development, operation, and maintenance of software we defined several techniques, methodologies, and tools within this document. These focus on providing software developers more knowledge and tools to help with energy-aware software development, or Energyware Engineering. Insights are provided on the energy influence of several stages performed during a software’s development process. We look at the energy efficiency of various popular programming languages, understanding which are the most appropriate if a developer’s concern is energy consumption. A detailed study on the energy profiles of different Java data structures is also presented, alongwith a technique and tool, further providing more knowledge on what energy efficient alternatives a developer has to choose from. To help developers with the lack of tools, we defined and implemented a technique to detect energy inefficient fragments within the source code of a software system. This technique and tool has been shown to help developers improve the energy efficiency of their programs, and even outperforming a runtime profiler. Finally, answers are provided to common questions and misconceptions within this field of research, such as the relationship between time and energy, and howone can improve their software’s energy consumption. This thesis provides a great effort to help support both research and education on this topic, helps continue to grow green software out of its infancy, and contributes to solving the lack of knowledge and tools which exist for Energyware Engineering.Hoje em dia o consumo energético é uma das maiores preocupações a nível global. Apesar do hardware ser, de umaforma geral, o principal culpado para o consumo de energia num computador, o software tem também um impacto significativo na energia consumida, pois pode anular, em parte, a eficiência introduzida pelo hardware. Embora Green Computing não seja uma área de investigação nova, o foco tem sido, até recentemente, na componente de hardware. Embora as técnicas de Green Software tenham vindo a evoluir, não há ainda suporte suficiente para que os programadores possam produzir código com consciencialização energética. De facto existemvários estudos que defendem que existe tanto uma falta de conhecimento como uma escassez de ferramentas para o desenvolvimento energeticamente consciente. Esta tese pretende abordar estes dois problemas e tem como foco promover avanços em green software. O tópico do consumo de energia é abordado duma perspectiva de engenharia de software. Através do uso de abordagens sistemáticas, disciplinadas e quantificáveis no processo de desenvolvimento, operação e manutencão de software, foi possível a definição de novas metodologias e ferramentas, apresentadas neste documento. Estas ferramentas e metodologias têm como foco dotar de conhecimento e ferramentas os programadores de software, de modo a suportar um desenvolvimento energeticamente consciente, ou Energyware Engineering. Deste trabalho resulta a compreensão sobre a influência energética a ser usada durante as diferentes fases do processo de desenvolvimento de software. Observamos as linguagens de programação mais populares sobre um ponto de vista de eficiência energética, percebendo quais as mais apropriadas caso o programador tenha uma preocupação com o consumo energético. Apresentamos também um estudo detalhado sobre perfis energéticos de diferentes estruturas de dados em Java, acompanhado por técnicas e ferramentas, fornecendo conhecimento relativo a quais as alternativas energeticamente eficientes que os programadores dispõem. Por forma a ajudar os programadores, definimos e implementamos uma técnica para detetar fragmentos energicamente ineficientes dentro do código fonte de um sistema de software. Esta técnica e ferramenta têm demonstrado ajudar programadores a melhorarem a eficiência energética dos seus programas e em algum casos superando um runtime profiler. Por fim, são dadas respostas a questões e conceções erradamente formuladas dentro desta área de investigação, tais como o relacionamento entre tempo e energia e como é possível melhorar o consumo de energia do software. Foi empregue nesta tese um esforço árduo de suporte tanto na investigação como na educação relativo a este tópico, ajudando à maturação e crescimento de green computing, contribuindo para a resolução da lacuna de conhecimento e ferramentas para suporte a Energyware Engineering.This work is partially funded by FCT – Foundation for Science and Technology, the Portuguese Ministry of Science, Technology and Higher Education, through national funds, and co-financed by the European Social Fund (ESF) through the Operacional Programme for Human Capital (POCH), with scholarship reference SFRH/BD/112733/2015. Additionally, funding was also provided the ERDF – European Regional Development Fund – through the Operational Programmes for Competitiveness and Internationalisation COMPETE and COMPETE 2020, and by the Portuguese Government through FCT project Green Software Lab (ref. POCI-01-0145-FEDER-016718), by the project GreenSSCM - Green Software for Space Missions Control, a project financed by the Innovation Agency, SA, Northern Regional Operational Programme, Financial Incentive Grant Agreement under the Incentive Research and Development System, Project No. 38973, and by the Luso-American Foundation in collaboration with the National Science Foundation with grant FLAD/NSF ref. 300/2015 and ref. 275/2016

    Sustainability Design and Software: The Karlskrona Manifesto

    Get PDF
    Sustainability has emerged as a broad concern for society. Many engineering disciplines have been grappling with challenges in how we sustain technical, social and ecological systems. In the software engineering community, for example, maintainability has been a concern for a long time. But too often, these issues are treated in isolation from one another. Misperceptions among practitioners and research communities persist, rooted in a lack of coherent understanding of sustainability, and how it relates to software systems research and practice. This article presents a cross-disciplinary initiative to create a common ground and a point of reference for the global community of research and practice in software and sustainability, to be used for effectively communicating key issues, goals, values and principles of sustainability design for software-intensive systems. The centrepiece of this effort is the Karlskrona Manifesto for Sustainability Design, a vehicle for a much needed conversation about sustainability within and beyond the software community, and an articulation of the fundamental principles underpinning design choices that affect sustainability. We describe the motivation for developing this manifesto, including some considerations of the genre of the manifesto as well as the dynamics of its creation. We illustrate the collaborative reflective writing process and present the current edition of the manifesto itself. We assess immediate implications and applications of the articulated principles, compare these to current practice, and suggest future steps

    Mapping and assessment of ecosystems and their services. Urban ecosystems

    Get PDF
    Action 5 of the EU Biodiversity Strategy to 2020 requires member states to Map and Assess the state of Ecosystems and their Services (MAES). This report provides guidance for mapping and assessment of urban ecosystems. The MAES urban pilot is a collaboration between the European Commission, the European Environment Agency, volunteering Member States and cities, and stakeholders. Its ultimate goal is to deliver a knowledge base for policy and management of urban ecosystems by analysing urban green infrastructure, condition of urban ecosystems and ecosystem services. This report presents guidance for mapping urban ecosystems and includes an indicator framework to assess the condition of urban ecosystems and urban ecosystem services. The scientific framework of mapping and assessment is designed to support in particular urban planning policy and policy on green infrastructure at urban, metropolitan and regional scales. The results are based on the following different sources of information: a literature survey of 54 scientific articles, an online-survey (on urban ecosystems, related policies and planning instruments and with participation of 42 cities), ten case studies (Portugal: Cascais, Oeiras, Lisbon; Italy: Padua, Trento, Rome; The Netherlands: Utrecht; Poland: Poznań; Spain: Barcelona; Norway: Oslo), and a two-day expert workshop. The case studies constituted the core of the MAES urban pilot. They provided real examples and applications of how mapping and assessment can be organized to support policy; on top, they provided the necessary expertise to select a set of final indicators for condition and ecosystem services. Urban ecosystems or cities are defined here as socio-ecological systems which are composed of green infrastructure and built infrastructure. Urban green infrastructure (GI) is understood in this report as the multi-functional network of urban green spaces situated within the boundary of the urban ecosystem. Urban green spaces are the structural components of urban GI. This study has shown that there is a large scope for urban ecosystem assessments. Firstly, urban policies increasingly use urban green infrastructure and nature-based solutions in their planning process. Secondly, an increasing amount of data at multiple spatial scales is becoming available to support these policies, to provide a baseline, and to compare or benchmark cities with respect to the extent and management of the urban ecosystem. Concrete examples are given on how to delineate urban ecosystems, how to choose an appropriate spatial scale, and how to map urban ecosystems based on a combination of national or European datasets (including Urban Atlas) and locally collected information (e.g., location of trees). Also examples of typologies for urban green spaces are presented. This report presents an indicator framework which is composed of indicators to assess for urban ecosystem condition and for urban ecosystem services. These are the result of a rigorous selection process and ensure consistent mapping and assessment across Europe. The MAES urban pilot will continue with work on the interface between research and policy. The framework presented in this report needs to be tested and validated across Europe, e.g. on its applicability at city scale, on how far the methodology for measuring ecosystem condition and ecosystem service delivery in urban areas can be used to assess urban green infrastructure and nature-based solutions

    Green-Agile Maturity Model: An Evaluation Framework for Global Software Development Vendors

    Get PDF
    Agile methods are extensively adapted by software development organizations due to the competitive benefits it offers. In recent years global software development (GSD) projects practice agile methods as prominent methods to deliver the software in increments with utmost user satisfaction and affordable cost. Beside the use of agile methods, the software industry has also considered the green aspect of software, to be in line with the demands of the organizations and the world technological ecosystem. The green and sustainable feature of software should focus both the energy and resource efficiency key factors. This phenomenon of embedding the green flavor in software has emerged a new research area, green software engineering, that promises the development of eco-friendly software with minimum energy and use of less computing resources, to trim down the adverse effects on both society and environment. The principal objective of this research study is to design and develop a multi-level Green-Agile Maturity Model (GAMM) to assess the GSD vendors' agile maturity in terms of green software development. The model has been built in four phases. In phase I and II, systematic literature review (SLR) was performed to identify the success factors and risk factors that either supports or hinders the green and sustainable software development respectively by practicing the agile methods in GSD. The results have been validated from 106 relevant experts, dealing with agile and green software projects, through questionnaire survey. The experts' demographic represents 25 different countries. We also identified the industry practices through SLR and survey, to address our identified critical factors. Phase III of this research deals with development of the GAMM by categorizing the identified factors into seven Green-Agile maturity levels. A similar approach has been used in other models such as Capability Maturity Model Integration (CMMI), Implementation Maturity Model (IMM) and Software Outsourcing Vendors Readiness Model (SOVRM). In phase IV of this research, five case studies were conducted at GSD organizations, to evaluate the structure and efficacy of the GAMM, while as a major contribution, this paper presents our developed model, the GAMM, which aims to assess the green-agile maturity of the GSD vendors in terms of green and sustainable software development.Qatar University [IRCC-2021-010]

    Energy-Efficient Software

    Get PDF
    The energy consumption of ICT is growing at an unprecedented pace. The main drivers for this growth are the widespread diffusion of mobile devices and the proliferation of datacenters, the most power-hungry IT facilities. In addition, it is predicted that the demand for ICT technologies and services will increase in the coming years. Finding solutions to decrease ICT energy footprint is and will be a top priority for researchers and professionals in the field. As a matter of fact, hardware technology has substantially improved throughout the years: modern ICT devices are definitely more energy efficient than their predecessors, in terms of performance per watt. However, as recent studies show, these improvements are not effectively reducing the growth rate of ICT energy consumption. This suggests that these devices are not used in an energy-efficient way. Hence, we have to look at software. Modern software applications are not designed and implemented with energy efficiency in mind. As hardware became more and more powerful (and cheaper), software developers were not concerned anymore with optimizing resource usage. Rather, they focused on providing additional features, adding layers of abstraction and complexity to their products. This ultimately resulted in bloated, slow software applications that waste hardware resources -- and consequently, energy. In this dissertation, the relationship between software behavior and hardware energy consumption is explored in detail. For this purpose, the abstraction levels of software are traversed upwards, from source code to architectural components. Empirical research methods and evidence-based software engineering approaches serve as a basis. First of all, this dissertation shows the relevance of software over energy consumption. Secondly, it gives examples of best practices and tactics that can be adopted to improve software energy efficiency, or design energy-efficient software from scratch. Finally, this knowledge is synthesized in a conceptual framework that gives the reader an overview of possible strategies for software energy efficiency, along with examples and suggestions for future research
    • …
    corecore