Embedded systems can be considered as specialized computing systems which can be used for multi-purpose application varying from mobile-phone to military and home-automation devices. Although the functionalities of these devices are differed, the computational structure and design is tightly connected with the platform and programmability in which they rely on. Consequently, by introducing the VLSI technology, designing complex systems-on-chip (SoC) platform and related Network-on-Chip (NoC) has to be finely tuned. The target is a multi-objective optimization problem: to maximize the performance of the platform and minimize the power consumption or other non-functional metrics. During this design phase, Design Space Exploration (DSE) plays a major role to benefit the designer, to prune the large design space and support the designer during the analysis phase. The research thesis targets the exploration of compiler options parameters, in order to automatically explore the design space and analyze the compiler-architecture co-design in VLIW processor by applying random design of experiment algorithm. The thesis tackles the aforementioned problem by proposing an automatic methodology based on a tool-chain including the MOST tool(Multi-Objective System Tuner), a Ubuntu wrapper and two open-source compilers; namely, LLVM and VEX. The proposed tool-chain enables the designer to automatically explore, optimize and analyze the options by using several standard benchmarks for both high-end embedded and signal processing applications. The analysis could be used as a tool-chain for benchmarking the compiler options and expanded to architectural options in the near future. The optimization phase could be done as a further step of the research to generalize the explored trends in the results' analysis. In this dissertation, the thesis is supported by a large set of experimental results relying on solid sets of statistical analysis which clearly shows the characteristics and the effects of each transformation. We targeted benchmarking with MOST software, VEX and LLVM simulator to provide solid experimental setup. In addition, the Appendix provided a complete hand-manual for designers in order to use as a multiple-purpose reference.

I sistemi embedded possono essere considerati come sistemi di calcolo specializzati che possono essere usati per applicazioni multi-purpose che possono spaziare da telefoni cellulari fino ad applicazioni militari o di domotica. Sebbene le funzionalità di questi dispositivi siano diverse, la struttura di calcolo e il relativo progetto è strettamente collegato con la piattaforma e il paradigma di programmazione utilizzato. Di conseguenza, introducendo la tecnologia VLSI, il progetto di piattaforme complesse di tipo System-on-Chip (SoC) e della relativa rete di interconnessione on-chip (Network-on-Chip) deve essere dettagliatamente raffinato. L'obiettivo è massimizzare le prestazioni della piattaforma e minimizzare la potenza dissipata e altre metriche non funzionali del sistema. In tale fase di progetto, l'esplorazione dello spazio di progetto (Design Space Exploration) gioco un ruolo fondamentale per filtrare automaticamente i punti dello spazio di progetto e supportare il progettista nella fase di analisi. La presente tesi di ricerca ha come obiettivo principale l'eplorazione dei parametri del compilatore, in modo da esplorare automaticamente lo spazio di progetto e analizzare in modo congiunto i paramteri del compilatore e architetturali nei processori VLIW applicando tecniche casuali per il progetto degli esperimenti (Design of Experiment). La tesi affronta il problema proponendo una metodologia automatica basata su una tool-chain che include il tool MOST (Multi-Objective System Tune), un wrapper Ubunti e due compilatori open-source: LLVM e VEX. La tool-chain proposta consente al progettista di esplorare automaticamente, di ottimizzare e di analizzare le opzioni dello spazio di progetto usando diversi benchmark standard per applicazioni high-end embedded e di elaborazione dei segnali. La metodologia di analisi proposta può essere usata come tool-chain di benchmarking per valutare i parametri del compilatore e come sviluppo futuro per valutare i paramteri architetturali. La fase di ottimizzazione può essere eseguita come sviluppo futuro del progetto di ricerca per generalizzare gli andamenti evidenziati nell'analisi dei risultati sperimentali. Nel presente lavoro di tesi, l'approccio proposto è supportato da un ampio insieme di risultati sperimentatli che si basano su un insieme solido di analisi statistiche che evidenziano chiaramente le carattersitiche e gli effetti di ogni trasformazione applicata. L'analisi presenta risultati ottenuti utilizzando la metodologia proposta basata sui tool MOST, VEX e LLM che forniscono un solido ambiente di sperimentazione. Inoltre, nell'Appendice sono raccolti tutti i risultati sperimentali ottenuti nella presente tesi da utilizzare come rifermento per analisi successive.

Design space exploration methodology for compiler parameters in VLIW processors

ASHOURI, AMIR HOSSEIN
2012/2013

Abstract

Embedded systems can be considered as specialized computing systems which can be used for multi-purpose application varying from mobile-phone to military and home-automation devices. Although the functionalities of these devices are differed, the computational structure and design is tightly connected with the platform and programmability in which they rely on. Consequently, by introducing the VLSI technology, designing complex systems-on-chip (SoC) platform and related Network-on-Chip (NoC) has to be finely tuned. The target is a multi-objective optimization problem: to maximize the performance of the platform and minimize the power consumption or other non-functional metrics. During this design phase, Design Space Exploration (DSE) plays a major role to benefit the designer, to prune the large design space and support the designer during the analysis phase. The research thesis targets the exploration of compiler options parameters, in order to automatically explore the design space and analyze the compiler-architecture co-design in VLIW processor by applying random design of experiment algorithm. The thesis tackles the aforementioned problem by proposing an automatic methodology based on a tool-chain including the MOST tool(Multi-Objective System Tuner), a Ubuntu wrapper and two open-source compilers; namely, LLVM and VEX. The proposed tool-chain enables the designer to automatically explore, optimize and analyze the options by using several standard benchmarks for both high-end embedded and signal processing applications. The analysis could be used as a tool-chain for benchmarking the compiler options and expanded to architectural options in the near future. The optimization phase could be done as a further step of the research to generalize the explored trends in the results' analysis. In this dissertation, the thesis is supported by a large set of experimental results relying on solid sets of statistical analysis which clearly shows the characteristics and the effects of each transformation. We targeted benchmarking with MOST software, VEX and LLVM simulator to provide solid experimental setup. In addition, the Appendix provided a complete hand-manual for designers in order to use as a multiple-purpose reference.
ZACCARIA, VITTORIO
XYDIS, SOTIRIS
ING V - Scuola di Ingegneria dell'Informazione
20-dic-2012
2012/2013
I sistemi embedded possono essere considerati come sistemi di calcolo specializzati che possono essere usati per applicazioni multi-purpose che possono spaziare da telefoni cellulari fino ad applicazioni militari o di domotica. Sebbene le funzionalità di questi dispositivi siano diverse, la struttura di calcolo e il relativo progetto è strettamente collegato con la piattaforma e il paradigma di programmazione utilizzato. Di conseguenza, introducendo la tecnologia VLSI, il progetto di piattaforme complesse di tipo System-on-Chip (SoC) e della relativa rete di interconnessione on-chip (Network-on-Chip) deve essere dettagliatamente raffinato. L'obiettivo è massimizzare le prestazioni della piattaforma e minimizzare la potenza dissipata e altre metriche non funzionali del sistema. In tale fase di progetto, l'esplorazione dello spazio di progetto (Design Space Exploration) gioco un ruolo fondamentale per filtrare automaticamente i punti dello spazio di progetto e supportare il progettista nella fase di analisi. La presente tesi di ricerca ha come obiettivo principale l'eplorazione dei parametri del compilatore, in modo da esplorare automaticamente lo spazio di progetto e analizzare in modo congiunto i paramteri del compilatore e architetturali nei processori VLIW applicando tecniche casuali per il progetto degli esperimenti (Design of Experiment). La tesi affronta il problema proponendo una metodologia automatica basata su una tool-chain che include il tool MOST (Multi-Objective System Tune), un wrapper Ubunti e due compilatori open-source: LLVM e VEX. La tool-chain proposta consente al progettista di esplorare automaticamente, di ottimizzare e di analizzare le opzioni dello spazio di progetto usando diversi benchmark standard per applicazioni high-end embedded e di elaborazione dei segnali. La metodologia di analisi proposta può essere usata come tool-chain di benchmarking per valutare i parametri del compilatore e come sviluppo futuro per valutare i paramteri architetturali. La fase di ottimizzazione può essere eseguita come sviluppo futuro del progetto di ricerca per generalizzare gli andamenti evidenziati nell'analisi dei risultati sperimentali. Nel presente lavoro di tesi, l'approccio proposto è supportato da un ampio insieme di risultati sperimentatli che si basano su un insieme solido di analisi statistiche che evidenziano chiaramente le carattersitiche e gli effetti di ogni trasformazione applicata. L'analisi presenta risultati ottenuti utilizzando la metodologia proposta basata sui tool MOST, VEX e LLM che forniscono un solido ambiente di sperimentazione. Inoltre, nell'Appendice sono raccolti tutti i risultati sperimentali ottenuti nella presente tesi da utilizzare come rifermento per analisi successive.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
ASHOURI_thesis_All_2400_dpi.pdf

Open Access dal 29/11/2013

Descrizione: A.H_Ashouri_M.Sc_Thesis_All
Dimensione 29.22 MB
Formato Adobe PDF
29.22 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/72083