Marco Couto

Dr. Marco Couto


Research Focus & Metrics

Academic Career Length

13Years (2014-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
23 October 2017
Verified
Conference Paper
Open access
RPRui Pereira
Rui Pereira
MCMarco Couto
Marco Couto
FRFrancisco Ribeiro
Francisco Ribeiro
RRRui Rua
Rui Rua
JCJácome Cunha
Jácome Cunha
Joao L SaraivaJoao L Saraiva
Joao L Saraiva

14 May 2016
Verified
Conference Paper
Open access
RPRui Pereira
Rui Pereira
MCMarco Couto
Marco Couto
Joao L SaraivaJoao L Saraiva
Joao L Saraiva
JCJácome Cunha
Jácome Cunha
JFJoão Paulo Fernandes
João Paulo Fernandes
This paper presents a detailed study of the energy consumption of the different Java Collection Framework (JFC) implementations. For each method of an implementation in this framework, we present its energy consumption when handling different amounts of data. Knowing the greenest methods for each implementation, we present an energy optimization approach for Java programs: based on calls to JFC methods in the source code of a program, we select the greenest implementation. Finally, we present preliminary results of optimizing a set of Java programs where we obtained 6.2% energy savings.

21 September 2017
Verified
Conference Paper
Open access
MCMarco Couto
Marco Couto
RPRui Pereira
Rui Pereira
FRFrancisco Ribeiro
Francisco Ribeiro
RRRui Rua
Rui Rua
Joao L SaraivaJoao L Saraiva
Joao L Saraiva

1 February 2020
Verified
Conference Paper
Closed access
MCMarco Couto
Marco Couto
Joao L SaraivaJoao L Saraiva
Joao L Saraiva
JFJoão Paulo Fernandes
João Paulo Fernandes
Improving the energy efficiency of mobile applications is a timely goal, as it can contribute to increase a device's usage time, which most often is powered by batteries. Recent studies have provided empirical evidence that refactoring energy-greedy code patterns can in fact reduce the energy consumed by an application. These studies, however, tested the impact of refactoring patterns individually, often locally (e.g., by measuring method-level gains) and using a small set of applications. We studied the application-level impact of refactorings, comparing individual refactorings, among themselves and against the combinations on which they appear. We use scenarios that simulate realistic application usage on a large-scale repository of Android applications. To fully automate the detection and refactoring procedure, as well as the execution of test cases, we developed a publicly available tool called Chimera. Our findings include statistical evidence that i) individual refactorings produce consistent gains, but with different impacts, ii) combining as much refactorings as possible most often, but not always, increases energy savings when compared to individual refactorings, and iii) a few combinations are harmful to energy savings, as they can actually produce more losses than gains. We prepared a set of guidelines for developers to follow, aiding them on deciding how to refactor and consistently reduce energy.

1 March 2020 in Journal of Systems and Software
Verified
Journal Article
Closed access
RPRui Pereira
Rui Pereira
TCTiago Carção
Tiago Carção
MCMarco Couto
Marco Couto
JCJácome Cunha
Jácome Cunha
JFJoão Paulo Fernandes
João Paulo Fernandes
Joao L SaraivaJoao L Saraiva
Joao L Saraiva

20 March 2021 in Empirical Software Engineering
Verified
Journal Article
Closed access
PDF file
RPRui Pereira
Rui Pereira
HMHugo Matalonga
Hugo Matalonga
MCMarco Couto
Marco Couto
FCFernando Castor
Fernando Castor
BCBruno Cabral
Bruno Cabral
JFJoão Paulo Fernandes
João Paulo Fernandes