Compute and data intensive research problems, such as universe or microbiological studies, are pushing High Performance Computing architectures to achieve, in 2022, the Exascale level, that is the capability to process a billion billion calculations per second. These applications manage huge input datasets and they are characterized by multiple parameters that influence execution. Given that power consumption issues and energy efficiency have become essential, there exist various techniques that try to improve these aspects, keeping on acceptable quality of results. Approximate Computing strategies, both at software and hardware level, balance computation quality and expended effort, in order to achieve application objectives and to maximize overall computational efficiency. The design space of all possible configurations, for these kind of applications, is very huge and, therefore, it cannot be explored exhaustively. To achieve a full knowledge on both parameter values and corresponding metrics of interest (such as throughput, power consumption or output precision) is almost unfeasible and, therefore, we prefer approximate solutions. This thesis has focused on the development of a framework, Agora, that is able to drive online Design Space Exploration through an initial subset of configurations, in order to predict an application complete model through Machine Learning techniques. The result is used by an autotuner to dynamically adapt program execution with the best configuration that fulfills current goals and requirements. Main advantages of Agora are the elimination of any offline phase and design-time knowledge as well as the capability to manage multiple running applications at the same time.

Applicazioni di ricerca avanzata, come gli studi sull’universo o sulla microbiologia, stanno proiettando le architetture ad elevate prestazioni di calcolo (High Performance Computing) verso il traguardo di un miliardo di miliardi di operazioni effettuate al secondo, atteso nel 2022. Queste ricerche sono caratterizzate da una enorme quantità di dati in ingresso e dalla presenza di parametri che ne influenzano l’esecuzione. Poichè problematiche inerenti il consumo di potenza e l’efficienza energetica hanno assunto un’importanza rilevante, esistono varie tecniche che tentano di migliorare questi aspetti, mantenendo comunque accettabile il valore dei risultati ottenuti. Strategie di approssimazione (Approximate Computing), applicabili sia a livello hardware sia a livello software, cercano di raggiungere un equilibrio tra la qualità della computazione e lo sforzo richiesto, al fine di adempiere ai vincoli e agli obiettivi dell’applicazione e di massimizzare, al contempo, l’efficienza di calcolo. Per questo tipo di applicazioni, lo spazio delle possibili configurazioni è molto ampio e, pertanto, non è possibile esplorarlo esaustivamente. Possedere una completa conoscenza riguardo le combinazioni dei parametri e i corrispondenti risultati delle metriche prese in esame (come, ad esempio, il numero di operazioni completate al secondo, il consumo di potenza oppure la precisione dei dati in uscita) è praticamente irrealizzabile e, pertanto, si ricorre a soluzioni approssimate. Questa tesi ha sviluppato un sistema, Agora, in grado di gestire l’esplorazione di un sottospazio delle possibili configurazioni, con lo scopo di predire, usando tecniche di apprendimento automatico (Machine Learning), il modello completo dei programmi in esame; questo risultato è utilizzato da un autotuner per scegliere dinamicamente la migliore combinazione di parametri che soddisfi vincoli e obiettivi dell’applicazione. I principali benefici apportati da Agora sono l’eliminazione di ogni fase antecedente l’esecuzione dei programmi e la capacità di gestire molteplici applicazioni contemporaneamente.

A distributed framework supporting runtime autotuning for HPC applications

DI MARCO, CRISTIANO
2016/2017

Abstract

Compute and data intensive research problems, such as universe or microbiological studies, are pushing High Performance Computing architectures to achieve, in 2022, the Exascale level, that is the capability to process a billion billion calculations per second. These applications manage huge input datasets and they are characterized by multiple parameters that influence execution. Given that power consumption issues and energy efficiency have become essential, there exist various techniques that try to improve these aspects, keeping on acceptable quality of results. Approximate Computing strategies, both at software and hardware level, balance computation quality and expended effort, in order to achieve application objectives and to maximize overall computational efficiency. The design space of all possible configurations, for these kind of applications, is very huge and, therefore, it cannot be explored exhaustively. To achieve a full knowledge on both parameter values and corresponding metrics of interest (such as throughput, power consumption or output precision) is almost unfeasible and, therefore, we prefer approximate solutions. This thesis has focused on the development of a framework, Agora, that is able to drive online Design Space Exploration through an initial subset of configurations, in order to predict an application complete model through Machine Learning techniques. The result is used by an autotuner to dynamically adapt program execution with the best configuration that fulfills current goals and requirements. Main advantages of Agora are the elimination of any offline phase and design-time knowledge as well as the capability to manage multiple running applications at the same time.
GADIOLI, DAVIDE
PALERMO, GIANLUCA
ING - Scuola di Ingegneria Industriale e dell'Informazione
27-lug-2017
2016/2017
Applicazioni di ricerca avanzata, come gli studi sull’universo o sulla microbiologia, stanno proiettando le architetture ad elevate prestazioni di calcolo (High Performance Computing) verso il traguardo di un miliardo di miliardi di operazioni effettuate al secondo, atteso nel 2022. Queste ricerche sono caratterizzate da una enorme quantità di dati in ingresso e dalla presenza di parametri che ne influenzano l’esecuzione. Poichè problematiche inerenti il consumo di potenza e l’efficienza energetica hanno assunto un’importanza rilevante, esistono varie tecniche che tentano di migliorare questi aspetti, mantenendo comunque accettabile il valore dei risultati ottenuti. Strategie di approssimazione (Approximate Computing), applicabili sia a livello hardware sia a livello software, cercano di raggiungere un equilibrio tra la qualità della computazione e lo sforzo richiesto, al fine di adempiere ai vincoli e agli obiettivi dell’applicazione e di massimizzare, al contempo, l’efficienza di calcolo. Per questo tipo di applicazioni, lo spazio delle possibili configurazioni è molto ampio e, pertanto, non è possibile esplorarlo esaustivamente. Possedere una completa conoscenza riguardo le combinazioni dei parametri e i corrispondenti risultati delle metriche prese in esame (come, ad esempio, il numero di operazioni completate al secondo, il consumo di potenza oppure la precisione dei dati in uscita) è praticamente irrealizzabile e, pertanto, si ricorre a soluzioni approssimate. Questa tesi ha sviluppato un sistema, Agora, in grado di gestire l’esplorazione di un sottospazio delle possibili configurazioni, con lo scopo di predire, usando tecniche di apprendimento automatico (Machine Learning), il modello completo dei programmi in esame; questo risultato è utilizzato da un autotuner per scegliere dinamicamente la migliore combinazione di parametri che soddisfi vincoli e obiettivi dell’applicazione. I principali benefici apportati da Agora sono l’eliminazione di ogni fase antecedente l’esecuzione dei programmi e la capacità di gestire molteplici applicazioni contemporaneamente.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
2017_07_Di Marco.pdf

accessibile in internet per tutti

Descrizione: Elaborato di tesi
Dimensione 7.54 MB
Formato Adobe PDF
7.54 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/135114