Computer architectures field is facing technological and architectural obstacles that are limiting the general-purpose processor scaling in the delivered performance at a reasonable energy cost. Therefore, computer architects have to follow novel paths to harvest more energy-efficient computations from the currently available technology, for instance, by employing domain specialized solutions for a given scenario. Indeed, domain-specialized architectures can deliver extremely high performance at a relatively low energy profile and even more whenever combined with high-level abstractions for designing and programming it. Domain-Specific Architectures (DSAs) generally are the prominent exponent for domain specialization. Moreover, DSAs are programmable software architectures designed for few tasks, with the minimal amount of advanced CPU-based microarchitectural techniques, and to be efficiently implemented as Application-Specific Integrated Circuits (ASICs), or part of System on Chip (SoC). However, developing custom silicon devices is a time-consuming and costly process that is not always compatible with the time-to-market and fast evolution of the applications. Thus, adaptable computing platforms represent the most viable alternative for these scenarios. Field-Programmable Gate Arrays (FPGAs) are the candidate platforms for their on-field reconfigurable heterogeneous fabric. On top of the reconfigurability, FPGAs can implement large spatial computing designs and are publicly available on cloud computing platforms. Therefore, this dissertation focus on Domain-Specific Reconfigurable Architectures (DSRAs): domain-specialized architectures with adaptable datapaths implemented on FPGAs. The design of such architectures demands a clear view of system-level trends and FPGAs' abstraction layers. On top of that, advanced design methodologies enable domain-tailored energy-efficient architectures, and design automation toolchains open the path to apply iterative development cycles and reproducibility of results. Moreover, usability layers that span from the hardware-software interfacing to ways of programming the architecture are necessary for a user base creation and deploying usable hardware. For these reasons, this dissertation explores these crucial issues and presents relevant takeaways of the domain specialization role of reconfigurable computing systems. It begins with two Chapters that provide a bird's-eye view of the latest reconfigurable computing trends and the main ways of programming FPGAs and how to interact with them. Then, the dissertation dives into two relevant computing domains: image registration and regular expressions. For each domain, the dissertation includes design methodologies, design automation, and usability layers (with a particular focus for each of them), three critical aspects of implementing a DSRA.

Il campo delle architetture dei calcolatori sta affrontando ostacoli tecnologici e architetturali che limitano la scalabilità dei processori generici nelle prestazioni fornite ad un costo energetico ragionevole. Pertanto, i progettatori di architetture devono seguire nuovi percorsi per ottenere calcoli più efficienti dal punto di vista energetico con la tecnologia attualmente disponibile, ad esempio impiegando soluzioni specializzate in particolari domini. In effetti, le architetture specializzate nel dominio possono fornire prestazioni estremamente elevate con un profilo energetico relativamente basso e anche di più se combinate con astrazioni di alto livello per la progettazione e la programmazione. Le architetture specifiche del dominio (DSA) sono generalmente, oltre all'esponente di spicco per la specializzazione del dominio, architetture programmabili a livello software progettate per essere implementate in modo efficiente come circuiti integrati specifici per le applicazioni (ASIC) o parte di Sistema su un Chip (SoC), per pochi compiti, e con la minima quantità di tecniche microarchitetturali avanzate basate su CPU. Tuttavia, lo sviluppo di dispositivi in silicio personalizzati è un processo lungo e molto costoso che non è sempre compatibile con il tempo per andare sul mercato e la rapida evoluzione delle applicazioni. Pertanto, le piattaforme informatiche adattabili rappresentano l'alternativa più praticabile per questi scenari. Gli FPGA (Field-Programmable Gate Arrays) sono le piattaforme candidate per il loro tessuto eterogeneo riconfigurabile sul campo. Oltre alla riconfigurabilità, gli FPGA possono implementare grandi architetture di calcolo spaziale e sono disponibili pubblicamente su piattaforme di calcolo cloud. Pertanto, questa tesi si concentra sulle Architetture Riconfigurabili a Dominio Specifico (DSRA): architetture specializzate nel dominio con datapath adattabili implementate su FPGA.La progettazione di tali architetture richiede una visione chiara delle tendenze a livello di sistema e dei livelli di astrazione degli FPGA. Inoltre, le metodologie di progettazione avanzate consentono architetture efficienti dal punto di vista energetico su misura per il dominio e le toolchain di automazione della progettazione aprono la strada all'applicazione di cicli di sviluppo iterativi e alla riproducibilità dei risultati. Inoltre, i livelli di usabilità che vanno dall'interfaccia hardware-software alle modalità di programmazione dell'architettura sono necessari per la creazione di una base di utenti e l'implementazione di hardware utilizzabile. Per queste ragioni, questa tesi esplora questi argomenti cruciali e presenta importanti spunti sul ruolo dei sistemi di calcolo riconfigurabile nella specializzazione del dominio. Inizia con due capitoli che forniscono una panoramica delle ultime tendenze del calcolo riconfigurabile e delle principali modalità di programmazione degli FPGA e di come interagire con essi. Quindi, la tesi si tuffa in due domini di calcolo rilevanti: registrazione di immagini ed espressioni regolari. Per ogni dominio, la tesi includerà metodologie di progettazione, automazione della progettazione e livelli di usabilità (con un focus particolare per ciascuno di essi), tre aspetti chiave dell'implementazione di un DSRA.

On the role of reconfigurable systems in domain-specific computing

Conficconi, Davide
2021/2022

Abstract

Computer architectures field is facing technological and architectural obstacles that are limiting the general-purpose processor scaling in the delivered performance at a reasonable energy cost. Therefore, computer architects have to follow novel paths to harvest more energy-efficient computations from the currently available technology, for instance, by employing domain specialized solutions for a given scenario. Indeed, domain-specialized architectures can deliver extremely high performance at a relatively low energy profile and even more whenever combined with high-level abstractions for designing and programming it. Domain-Specific Architectures (DSAs) generally are the prominent exponent for domain specialization. Moreover, DSAs are programmable software architectures designed for few tasks, with the minimal amount of advanced CPU-based microarchitectural techniques, and to be efficiently implemented as Application-Specific Integrated Circuits (ASICs), or part of System on Chip (SoC). However, developing custom silicon devices is a time-consuming and costly process that is not always compatible with the time-to-market and fast evolution of the applications. Thus, adaptable computing platforms represent the most viable alternative for these scenarios. Field-Programmable Gate Arrays (FPGAs) are the candidate platforms for their on-field reconfigurable heterogeneous fabric. On top of the reconfigurability, FPGAs can implement large spatial computing designs and are publicly available on cloud computing platforms. Therefore, this dissertation focus on Domain-Specific Reconfigurable Architectures (DSRAs): domain-specialized architectures with adaptable datapaths implemented on FPGAs. The design of such architectures demands a clear view of system-level trends and FPGAs' abstraction layers. On top of that, advanced design methodologies enable domain-tailored energy-efficient architectures, and design automation toolchains open the path to apply iterative development cycles and reproducibility of results. Moreover, usability layers that span from the hardware-software interfacing to ways of programming the architecture are necessary for a user base creation and deploying usable hardware. For these reasons, this dissertation explores these crucial issues and presents relevant takeaways of the domain specialization role of reconfigurable computing systems. It begins with two Chapters that provide a bird's-eye view of the latest reconfigurable computing trends and the main ways of programming FPGAs and how to interact with them. Then, the dissertation dives into two relevant computing domains: image registration and regular expressions. For each domain, the dissertation includes design methodologies, design automation, and usability layers (with a particular focus for each of them), three critical aspects of implementing a DSRA.
PIRODDI, LUIGI
SILVANO, CRISTINA
17-feb-2022
On the role of reconfigurable systems in domain-specific computing
Il campo delle architetture dei calcolatori sta affrontando ostacoli tecnologici e architetturali che limitano la scalabilità dei processori generici nelle prestazioni fornite ad un costo energetico ragionevole. Pertanto, i progettatori di architetture devono seguire nuovi percorsi per ottenere calcoli più efficienti dal punto di vista energetico con la tecnologia attualmente disponibile, ad esempio impiegando soluzioni specializzate in particolari domini. In effetti, le architetture specializzate nel dominio possono fornire prestazioni estremamente elevate con un profilo energetico relativamente basso e anche di più se combinate con astrazioni di alto livello per la progettazione e la programmazione. Le architetture specifiche del dominio (DSA) sono generalmente, oltre all'esponente di spicco per la specializzazione del dominio, architetture programmabili a livello software progettate per essere implementate in modo efficiente come circuiti integrati specifici per le applicazioni (ASIC) o parte di Sistema su un Chip (SoC), per pochi compiti, e con la minima quantità di tecniche microarchitetturali avanzate basate su CPU. Tuttavia, lo sviluppo di dispositivi in silicio personalizzati è un processo lungo e molto costoso che non è sempre compatibile con il tempo per andare sul mercato e la rapida evoluzione delle applicazioni. Pertanto, le piattaforme informatiche adattabili rappresentano l'alternativa più praticabile per questi scenari. Gli FPGA (Field-Programmable Gate Arrays) sono le piattaforme candidate per il loro tessuto eterogeneo riconfigurabile sul campo. Oltre alla riconfigurabilità, gli FPGA possono implementare grandi architetture di calcolo spaziale e sono disponibili pubblicamente su piattaforme di calcolo cloud. Pertanto, questa tesi si concentra sulle Architetture Riconfigurabili a Dominio Specifico (DSRA): architetture specializzate nel dominio con datapath adattabili implementate su FPGA.La progettazione di tali architetture richiede una visione chiara delle tendenze a livello di sistema e dei livelli di astrazione degli FPGA. Inoltre, le metodologie di progettazione avanzate consentono architetture efficienti dal punto di vista energetico su misura per il dominio e le toolchain di automazione della progettazione aprono la strada all'applicazione di cicli di sviluppo iterativi e alla riproducibilità dei risultati. Inoltre, i livelli di usabilità che vanno dall'interfaccia hardware-software alle modalità di programmazione dell'architettura sono necessari per la creazione di una base di utenti e l'implementazione di hardware utilizzabile. Per queste ragioni, questa tesi esplora questi argomenti cruciali e presenta importanti spunti sul ruolo dei sistemi di calcolo riconfigurabile nella specializzazione del dominio. Inizia con due capitoli che forniscono una panoramica delle ultime tendenze del calcolo riconfigurabile e delle principali modalità di programmazione degli FPGA e di come interagire con essi. Quindi, la tesi si tuffa in due domini di calcolo rilevanti: registrazione di immagini ed espressioni regolari. Per ogni dominio, la tesi includerà metodologie di progettazione, automazione della progettazione e livelli di usabilità (con un focus particolare per ciascuno di essi), tre aspetti chiave dell'implementazione di un DSRA.
File allegati
File Dimensione Formato  
conficconi-phd-thesis-v_final.pdf

Open Access dal 24/01/2023

Descrizione: Final version of phd dissertation
Dimensione 3.99 MB
Formato Adobe PDF
3.99 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/183018