detecting anomalous energy consumption in android applications

Post on 06-Jul-2015

207 Views

Category:

Presentations & Public Speaking

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentation @ UFPE September 2014

TRANSCRIPT

Detecting Anomalous Energy Consumption inAndroid Applications

GENTES-CIN, UFPE

September 10, 2014

João Saraiva

jas@di.uminho.pt

http://di.uminho.pt/~jas

(based on Marco Couto's Msc thesis)

Green Software Lab @ PT

X

http://greenlab.di.uminho.pt/

Going Green

+ =

X

• Caught the attention of many companies allowing them to save:

Green Computing

X

“close to 50% of the energy costs of an organization can be attributed to the IT departments”

- [Harmon and Auseklis, 2009]

Green Computing – Greenness by IT

X

“up to 90% of energy used by ICT hardware can be attributed to

software”- [Standard, 2013]

Green Computing– Greenness of IT

X

Energy: a Sw Engineering Concern

X

Mining questions about software energy consumption

- [Pinto et al., 2014]

Energy: A Sw Engineering Concern

X

Unfortunately, there are no techniques nor tools to support sw engineers analysing/improving their green software as

they have to improve sw performance (runtime)-

C: Debugger Java: Faul Localization Haskell: Heap Profiler

This Talk:

X

1.The Android Power Tutor Consumption Model 2.Energy Consumption in Android Apps Source Code3.Green-aware Classication of Source Code Methods4.GreenDroid: An Android Framework for Energy Proling5.PVE Research Questions

The Android Power Tutor Comsumption Model

X

Model: Dynamic Callibration and API

X

Calibration

Model as an API

Apps Source Code Instrumentation

X

Android Testing Framework used to execute the instrumented Green-aware Source Code

Green-aware Classification of Source Code

X

Green Methods: These are the methods that have no interference in the anomalous energy consumptions. They are never invoked when a test of the application consumes more energy than the average.

Red Methods: Every time they are invoked, the application has anomalous energy consumption. They can be invoked when the application has bellow the average energy consumption as well, but no more than 30% of the times. They are supposed to be the methods with bigger influence in the anomalous energy consumption.

Yellow Methods: The methods that are invoked in other situations: mostly invoked when the application power consumption is bellow the average.

GreenDroid: Source Code Energy Profiler

X

GreenDroid in Practice

X

Comsumption per second:

Execution Time:

Is faster greener?!

GreenDroid: Energy Smells

X

(We reused Gzoltar Fault Localization Framework)

Spetrum-based Energy Fault Localization

X

Tests

Com

pon

en

t s

1

t1 t2 t3 t4 t5

1

11

11

1

1

100

1 1

1 1 1

1 1 1

1 11 0 1

1 0 1

1 1 1

0.30.7

0.3

0.3

0.3

0.7

1 0 1 0 1

But, what is pass/fail for energy comsumption?!

PVE Research Questions:

X

1.When is faster/slower greener? (compiler optimizations, garbage colletion, etc)

2.How to (better) adapt SFL for Green Computing? 3.Green-aware Software Product Lines?

Detecting Anomalous Energy Consumption inAndroid Applications

GENTES-CIN,

UFPE

September 10,

2014

João Saraiva

jas@di.uminho.pt

http://di.uminho.pt/~jas

top related