Software applications directly impact on IT energy consumptions as they indirectly guide hardware operations. Optimizing algorithm has a direct beneficial impact on energy efficiency, but it requires domain knowledge and an accurate analysis of the code, which may be infeasible and too costly to perform for large code bases. In this Thesis we present an approach based on dynamic memoization to increase software energy effi ciency. This implies to identify a subset of pure functions that can be tabulated and to automatically store the results corresponding to the most frequent invocations. We implemented a prototype software system to apply memoization and tested it on a set of financial functions. Empirical results shows average energy savings of 49% and time performance savings of 47%.

Le applicazioni software incidono direttamente sui consumi energetici dell'IT. L'ottimizzazione di un algoritmo ha un impatto diretto sull'efficienza energetica, ma richiede la conoscenza del dominio e di una accurata analisi del codice, che può essere impraticabile e troppo costosa da effettuare per basi di codice di grandi dimensioni. In questa Tesi presentiamo un approccio basato sulla memoizzazione dinamica per aumentare l'efficienza energetica del software. Ciò implica di identi ficare un sottoinsieme di funzioni pure che possono essere tabulate e memorizzarne automaticamente i risultati corrispondenti agli input delle invocazioni più frequenti. Abbiamo analizzato il problema ed implementato un prototipo di un sistema software capace di individuare le funzioni pure interne ad un'applicazione Java e di applicare la memoizzazione a queste funzioni. Infi ne il prototipo e stato testato su un benchmark set di librerie finanziarie e statistiche. I risultati empirici mostrano un risparmio energetico medio del 49% delle prestazioni e risparmio di tempo del 47%.

Una metodologia basata sulla memoizzazione dinamica per l'efficienza energetica del software applicativo

BESSI, MARCO
2009/2010

Abstract

Software applications directly impact on IT energy consumptions as they indirectly guide hardware operations. Optimizing algorithm has a direct beneficial impact on energy efficiency, but it requires domain knowledge and an accurate analysis of the code, which may be infeasible and too costly to perform for large code bases. In this Thesis we present an approach based on dynamic memoization to increase software energy effi ciency. This implies to identify a subset of pure functions that can be tabulated and to automatically store the results corresponding to the most frequent invocations. We implemented a prototype software system to apply memoization and tested it on a set of financial functions. Empirical results shows average energy savings of 49% and time performance savings of 47%.
AGOSTA, GIAMPAOLO
CAPRA, EUGENIO
ING V - Facolta' di Ingegneria dell'Informazione
20-dic-2010
2009/2010
Le applicazioni software incidono direttamente sui consumi energetici dell'IT. L'ottimizzazione di un algoritmo ha un impatto diretto sull'efficienza energetica, ma richiede la conoscenza del dominio e di una accurata analisi del codice, che può essere impraticabile e troppo costosa da effettuare per basi di codice di grandi dimensioni. In questa Tesi presentiamo un approccio basato sulla memoizzazione dinamica per aumentare l'efficienza energetica del software. Ciò implica di identi ficare un sottoinsieme di funzioni pure che possono essere tabulate e memorizzarne automaticamente i risultati corrispondenti agli input delle invocazioni più frequenti. Abbiamo analizzato il problema ed implementato un prototipo di un sistema software capace di individuare le funzioni pure interne ad un'applicazione Java e di applicare la memoizzazione a queste funzioni. Infi ne il prototipo e stato testato su un benchmark set di librerie finanziarie e statistiche. I risultati empirici mostrano un risparmio energetico medio del 49% delle prestazioni e risparmio di tempo del 47%.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2010_12_Bessi.pdf

accessibile in internet solo dagli utenti autorizzati

Descrizione: Testo della Tesi
Dimensione 1.94 MB
Formato Adobe PDF
1.94 MB Adobe PDF   Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/12084