Nowadays, both high performance systems and embedded devices are designed to serve rather static workloads with high-performance requirements, although we are moving towards a highly flexible, on-demand computing scenario that is characterized by varying workloads, constituted by diverse applications with different performance requirements and criticality. A promising approach to address the challenges posed by this scenario is to better exploit specialized computing resources integrated in a heterogeneous system architecture such as asymmetric multicore CPUs, specialized graphic co-processors, GPUs, or reconfigurable HW such as FPGAs. Furthermore we can expect that, in the forthcoming years, more and more companies will drive their businesses on the basis of complex data analysis as is testified by the Big Data phenomenon. Under this assumption datacenters will have to face even more unpredictable workloads coming from a variety of contexts and users each one with his own service level objectives. With this unpredictability the datacenter management systems must be able to react to situations unknown and not predictable at design time. To face this challenge the research community started to devise autonomic resource management techniques that improve the standard static resource mechanisms that have usually left the target systems under utilized. Unfortunately, only few solutions have been proposed in the field of heterogeneous systems. This dissertation analyzes this context and proposes a general frameworks for the development and implementation of runtime resource management techniques in the context of heterogeneous systems. The outcomes of this thesis are the definition of a backbone infrastructure for runtime resource management, accompanied by an high level simulator for fast prototyping of autonomic policies; finally we also propose new controlling techniques that complete and enhance the ones currently in the state of the art.

Sia i dispositivi embedded che i centri di supercalcolo sono oggi pensati per service dei carichi di lavoro statici. Tuttavia ci stiamo sempre piú movendo verso carichi variegati e flessibili come ad esempio succede nel caso di computazioni in ambito cloud. Generalmente i carichi di lavoro sono oggi costituiti da applicazioni molto variegate tra loro e con tempi di arrivo non predicibili in fase di design del sistema e soprattutto con diversi requisiti di performance che sono dettati dalla necessitá degli utenti finali. Un approccio promettente in questo ambito sembra essere l'utilizzo di risorse specializzate integrate tra loro in dispositivi eterogenei come ad esempio i multicore asimmetrici, acceleratori grafici, oppure soluzioni HW riconfigurabili. Oltre a questa flessibilitá, quello che ci si puó attendere per il prossimo futuro, é che sempre piú aziende sfrutteranno strumenti di data-analytics per prendere decisioni strategiche, cavalcando l'onda di quella che é identificata come la rivoluzione dei "Big Data". Data questa grande varibilitá ed impredicibilitá dei carichi, i componenti dei centri di calcolo ed in generale di qualsiasi dispositivo devono essere in grado di reagire a situazioni non predicibili in fase del design del dispositivo stesso. Per risolvere questo problema, la comunitá ha iniziato ad esplorare tecniche di gestione risorse autonomiche per migliorare quegli ambiti in cui un partizionamento statico delle risorse ha risultato portare ad un utilizzo sub-ottimo del sistema. Sfortunatamente queste soluzioni autonomiche sono ad oggi ancora poco esplorate nell'ambito dei sistemi eterogenei. Questo elaborato analizza questo contesto e illustra un framework generale per permettere lo sviluppo e l'implementazione di politiche di gestione risorse a runtime nell'ambito dei sistemi eterogenei. Il risultato di questo lavoro di tesi é la definizione di un infrastruttura per la gestione risorse a runtime accompagnata da un simulatore per permettere il rapido sviluppo delle politiche. Infine sono anche presentate una serie di politiche di controllo, sviluppate per diversi sistemi, che completano e migliorano le soluzioni attualmente disponibili sia in ambito commerciale che nella ricerca.

On the design of autonomic techniques for runtime resource management in heterogeneous systems

DURELLI, GIANLUCA CARLO

Abstract

Nowadays, both high performance systems and embedded devices are designed to serve rather static workloads with high-performance requirements, although we are moving towards a highly flexible, on-demand computing scenario that is characterized by varying workloads, constituted by diverse applications with different performance requirements and criticality. A promising approach to address the challenges posed by this scenario is to better exploit specialized computing resources integrated in a heterogeneous system architecture such as asymmetric multicore CPUs, specialized graphic co-processors, GPUs, or reconfigurable HW such as FPGAs. Furthermore we can expect that, in the forthcoming years, more and more companies will drive their businesses on the basis of complex data analysis as is testified by the Big Data phenomenon. Under this assumption datacenters will have to face even more unpredictable workloads coming from a variety of contexts and users each one with his own service level objectives. With this unpredictability the datacenter management systems must be able to react to situations unknown and not predictable at design time. To face this challenge the research community started to devise autonomic resource management techniques that improve the standard static resource mechanisms that have usually left the target systems under utilized. Unfortunately, only few solutions have been proposed in the field of heterogeneous systems. This dissertation analyzes this context and proposes a general frameworks for the development and implementation of runtime resource management techniques in the context of heterogeneous systems. The outcomes of this thesis are the definition of a backbone infrastructure for runtime resource management, accompanied by an high level simulator for fast prototyping of autonomic policies; finally we also propose new controlling techniques that complete and enhance the ones currently in the state of the art.
BONARINI, ANDREA
SCIUTO, DONATELLA
5-feb-2016
Sia i dispositivi embedded che i centri di supercalcolo sono oggi pensati per service dei carichi di lavoro statici. Tuttavia ci stiamo sempre piú movendo verso carichi variegati e flessibili come ad esempio succede nel caso di computazioni in ambito cloud. Generalmente i carichi di lavoro sono oggi costituiti da applicazioni molto variegate tra loro e con tempi di arrivo non predicibili in fase di design del sistema e soprattutto con diversi requisiti di performance che sono dettati dalla necessitá degli utenti finali. Un approccio promettente in questo ambito sembra essere l'utilizzo di risorse specializzate integrate tra loro in dispositivi eterogenei come ad esempio i multicore asimmetrici, acceleratori grafici, oppure soluzioni HW riconfigurabili. Oltre a questa flessibilitá, quello che ci si puó attendere per il prossimo futuro, é che sempre piú aziende sfrutteranno strumenti di data-analytics per prendere decisioni strategiche, cavalcando l'onda di quella che é identificata come la rivoluzione dei "Big Data". Data questa grande varibilitá ed impredicibilitá dei carichi, i componenti dei centri di calcolo ed in generale di qualsiasi dispositivo devono essere in grado di reagire a situazioni non predicibili in fase del design del dispositivo stesso. Per risolvere questo problema, la comunitá ha iniziato ad esplorare tecniche di gestione risorse autonomiche per migliorare quegli ambiti in cui un partizionamento statico delle risorse ha risultato portare ad un utilizzo sub-ottimo del sistema. Sfortunatamente queste soluzioni autonomiche sono ad oggi ancora poco esplorate nell'ambito dei sistemi eterogenei. Questo elaborato analizza questo contesto e illustra un framework generale per permettere lo sviluppo e l'implementazione di politiche di gestione risorse a runtime nell'ambito dei sistemi eterogenei. Il risultato di questo lavoro di tesi é la definizione di un infrastruttura per la gestione risorse a runtime accompagnata da un simulatore per permettere il rapido sviluppo delle politiche. Infine sono anche presentate una serie di politiche di controllo, sviluppate per diversi sistemi, che completano e migliorano le soluzioni attualmente disponibili sia in ambito commerciale che nella ricerca.
Tesi di dottorato
File allegati
File Dimensione Formato  
thesis.pdf

accessibile in internet per tutti

Descrizione: PhD Thesis
Dimensione 2.24 MB
Formato Adobe PDF
2.24 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/117548