Modelling software energy consumption for energy efficiency analysis
Fecha
2022Autor
Tutor
Nivel académico
Doctorado
Tipo
Otro título
Modelando o Consumo Energético de Software para Análise de Eficiência Energética
Materia
Abstract
Software energy consumption is becoming an essential issue during software develop ment and evolution, in particular, due to several restrictions imposed by platforms and application requirements. However, still little support exists to aid developers to under stand how some small factors can affect software energy efficiency. This mainly happens because of the absence of appropriate abstractions to model and analyse software energy behavior. This work proposes an approach to support the constr ...
Software energy consumption is becoming an essential issue during software develop ment and evolution, in particular, due to several restrictions imposed by platforms and application requirements. However, still little support exists to aid developers to under stand how some small factors can affect software energy efficiency. This mainly happens because of the absence of appropriate abstractions to model and analyse software energy behavior. This work proposes an approach to support the construction of energy behav ior models from code. For this, we developed a model called ELTS (Energy Labelled Transitions System), which is a Labelled Transition System (LTS) augmented with en ergy information. To build this model from Java code, we created the concept of basic energy unit (BET) that enables to associate parts of the code to elements of the ELTS. With this, we aim to guarantee traceability, which enables the identification of possible hotspots of energy in the code after an analysis of the model. We represent the semantics of the code in the model through relations between BETs, namely sequence, conditional and iteration. These relations enable a better understanding of the behavior when ana lyzing the model and represent the connections of its composing BETs, also facilitating model construction. In addition, we propose how to locally change the abstraction level of the model. Thus, a part of the model is only expanded if necessary, keeping the rest of the model as it is. We describe three experiments to demonstrate how to model programs using our approach, including basic model composition. This modelling strategy makes it possible to improve the analysis of energy consumption, thus possibly leading to better decisions regarding software energy efficiency. Representamos a semântica do código no modelo por meio de relações entre BETs, definidas como sequência, condicional e iteração. Essas relações possibilitam um melhor entendimento do comportamento ao analisar o modelo e representam as conexões das BETs que o compõem, facilitando também a construção do modelo. Além disso, propomos como alterar localmente o nível de abstração do modelo. Assim, uma parte do modelo só é expandida se necessário, mantendo o restante do modelo como está. Descrevemos três experimentos para demonstrar como modelar programas usando nossa abordagem, incluindo uma composição básica de modelos. Essa estratégia de modelagem possibilita melhorar a análise do consumo de energia, possivelmente levando a melhores decisões em relação à eficiência energética do software. ...
Resumo
O consumo de energia de software está se tornando uma questão essencial durante o de senvolvimento e evolução de software, em particular, devido às várias restrições impostas pelas plataformas e requisitos de aplicativos. No entanto, ainda existe pouco suporte para ajudar os desenvolvedores a entender como alguns pequenos fatores podem afetar a eficiência energética do seu software. Isso acontece principalmente devido à ausência de abstrações apropriadas para modelar e analisar o comportamento ...
O consumo de energia de software está se tornando uma questão essencial durante o de senvolvimento e evolução de software, em particular, devido às várias restrições impostas pelas plataformas e requisitos de aplicativos. No entanto, ainda existe pouco suporte para ajudar os desenvolvedores a entender como alguns pequenos fatores podem afetar a eficiência energética do seu software. Isso acontece principalmente devido à ausência de abstrações apropriadas para modelar e analisar o comportamento relacionado ao consumo de energia de um software. Este trabalho propõe uma abordagem para a construção de modelos de comportamento energético a partir de código. Para isso, propomos um mo delo chamado ELTS (Energy Labeled Transition System), que é um Labeled Transition System (LTS) que contém informações de custos de energia. Para construir este modelo a partir de código Java, criamos o conceito de unidade básica de energia (BET), que permite associar partes do código a elementos do ELTS. Com isso, visamos a garantir a rastreabi lidade, que possibilita a identificação de pontos específicos de gasto de energia no código após uma análise do modelo. ...
Institución
Universidade Federal do Rio Grande do Sul. Instituto de Informática. Programa de Pós-Graduação em Microeletrônica.
Colecciones
-
Ingeniería (7412)Microelectrónica (208)
Este ítem está licenciado en la Creative Commons License