In recent times approximate computing has acquired increasingly importance both in high performance and consumer platforms. This is due to a series of emerging contexts in which it is not necessary to provide precise results, while it is possible to find a trade off between quality and error introduced. Several approximation techniques already exist, but they are solutions related to domain-specific applications or to precise computational layers. An overall solution that include a homogenous approximation model and to be applicable to representative contexts does not exist, neither in state of the art benchmarks. To address this problem, this Thesis proposes a methodology to define a set of applications that natively exposes approximation features and that could be structured using the most used methods in terms of data access patterns and parallelization. In order to validate this approach, we have first explored the effect of all the approximation parameters to measure applications performance in terms of execution speed and precision. Based on this analysis we have derived the Pareto set containing configurations representing the best trade-off. Finally, with the integration of an auto-tuner framework, we have verified if the applications are capable to self-adapt at runtime. Experimental results prove that all the developed kernels offer a wide range of possible behaviors.
Recentemente il calcolo approssimato ha acquisito sempre più importanza in ambiti come l’high performance computing e nelle maggiori piattaforme di largo consumo. Il motivo di questo aumento d’interesse è dovuto all’emergere di numerosi nuovi contesti applicativi dove non è più necessario produrre risultati precisi, rendendo possibile il compromesso tra prestazioni e errore introdotto. Esistono già una vasta serie di tecniche di approssimazione, ma si tratta molto spesso di soluzioni studiate per specifici domini applicativi o su precisi livelli della computazione. Non esiste una soluzione applicabile su contesti rappresentativi che a livello nativo integri un modello di approssimazione di carattere generale, nemmeno in benchmark considerati lo stato dell’arte. Per risolvere questo problema, questa Tesi propone una metodologia per definire delle applicazioni che espongono caratteristiche legate all’approssimazione e che sono strutturate considerando i metodi più importanti in termini di parallelismo e manipolazione dei dati. Per validare questo approccio abbiamo esplorato l’effetto di tutti i parametri di approssimazione per misurare le prestazioni delle applicazioni, sia in termini di velocità che di accuratezza. Basandoci su questa analisi abbiamo derivato il Pareto set contenente le configurazioni che rappresentano un trade-off ottimale. Successivamente, integrando un framework di auto-tuning, abbiamo provato la capacità delle applicazioni di adattarsi in fase di esecuzione.
Analysis of approximation techniques for parallel computing applications
DE PASQUALE, SILVIO VALERIO
2015/2016
Abstract
In recent times approximate computing has acquired increasingly importance both in high performance and consumer platforms. This is due to a series of emerging contexts in which it is not necessary to provide precise results, while it is possible to find a trade off between quality and error introduced. Several approximation techniques already exist, but they are solutions related to domain-specific applications or to precise computational layers. An overall solution that include a homogenous approximation model and to be applicable to representative contexts does not exist, neither in state of the art benchmarks. To address this problem, this Thesis proposes a methodology to define a set of applications that natively exposes approximation features and that could be structured using the most used methods in terms of data access patterns and parallelization. In order to validate this approach, we have first explored the effect of all the approximation parameters to measure applications performance in terms of execution speed and precision. Based on this analysis we have derived the Pareto set containing configurations representing the best trade-off. Finally, with the integration of an auto-tuner framework, we have verified if the applications are capable to self-adapt at runtime. Experimental results prove that all the developed kernels offer a wide range of possible behaviors.File | Dimensione | Formato | |
---|---|---|---|
2016_09_DePasquale.pdf
accessibile in internet solo dagli utenti autorizzati
Descrizione: Testo della tesi
Dimensione
6.49 MB
Formato
Adobe PDF
|
6.49 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/124584