In current years, we are assisting to an ever-increase request of performance in the genomic field, where human genome research will likely transform medical practices. The information that could be obtained from the genetic profile of different species and the knowledge of molecular basis of biological processes are leading to the development of more precise therapies and novel treatments. Nonetheless, the high complexity of algorithms used to process such data, paired with the necessity to find new optimal computing architectures due to the end of Moore's law and Dennard Scaling require a computational effort that may limit improvements. Within this context, Domain Specific Architectures (DSAs) implemented on reconfigurable hardware architectures, such as Field Programmable Gate Arrays (FPGAs), have proved to be efficient in increasing algorithms performance, while keeping a relative low power profile. The main drawback with FPGA architectures relies in their programmability, that considerably limits their adoption in High Performance Computing (HPC). Many efforts have been made in easing the adoption of FPGAs, with both commercial and academic solutions that ease the programming of the device, but as of today they still require FPGA-programming skills to obtain highly peformant architectures. The main objective of this thesis is the development of Hugenomic, a framework that exploits reconfigurable hardware architectures (FPGAs), to speedup genomic data analysis. Hugenomic is designed to be easy-to-use, providing genomic researchers with little knowledge of FPGA programming, a library of the most used hardware accelerated algorithms in sequence alignment and bioinformatics, and a platform to accelerate custom codes on FPGA with no knowledge of the underneath hardware architecture. The algorithms available in the Hugenomic framework have been developed thanks to a methodology to systematically accelerate algorithms on FPGA based on an adaptation of the Berkeley Roofline Model that accounts for the non-fixed architecture of FPGAs.

Negli ultimi anni stiamo assistendo ad un aumento delle richieste di sistemi computativi altamente performanti in ambito genomico, dove la ricerca sul genoma umano, permetterà di cambiare approccio alla pratica clinica. Le informazioni che possono essere ottenute dall'analisi dai dati genetici di individui differenti, e la conoscenza dei processi molecolari biologici stanno veicolando lo sviluppo di terapie più precise e mirate, e di conseguenza più efficaci. Tuttavia, la complessità algoritmica necessaria ad analizzare questi dati, associata alla necessità di trovare delle nuove architetture dei calcolatori a causa della fine delle leggi di Moore e Dennard Scaling, richiede una potenza computazionale che ad oggi potrebbe limitare lo sviluppo in questo settore. In questo contesto, le Architetture Specifiche di Dominio (DSA), implementate tramite architetture hardware riconfigurabili, come ad esempio i Field Programmable Gate Arrays, hanno dimostrato di essere in grado di aumentare considerevolmente le performance degli algoritmi, mantenendo un buon consumo di potenza. Il maggiore inconveniente di queste architetture, risiede nella loro difficoltà alla programmazione che ad oggi ne ha limitato l'adozione all'interno di sistemi di computazione ad alte performance (HPC). Durante questi anni, diversi strumenti sono stati proposti per facilitare la programmazione di FPGA, ma ancora oggi questi richiedono delle competenze specifiche di design hardware per riuscire ad ottenere delle architetture altamente ottimizzate. L'obbiettivo principale di questa tesi è lo sviluppo di Hugenomic, un framework che sfrutta architetture riconfigurabili (FPGA), per velocizzare il processo di analisi di dati genomici. Hugenomic è creato con l'obbiettivo di essere uno strumento di supporto facile all'uso, fornendo ai ricercatori in ambito genomico, con una minima conoscenza di programmazione FPGA, una libreria di algoritmi accelerati pronti all'uso, che possono essere utilizzati per effettuare allineamento di sequenze genomiche e per algoritmi bioinformatici, ed una piattaforma per accelerare codici proprietari su FPGA, rimanendo completamente agnostici riguardo l'architettura utilizzata. Gli algoritmi che vengono proposti all'interno della libreria accelerata di Hugenomic, sono stati sviluppati grazie ad una metodologia sistematica per accelerare algoritmi su FPGA che si basa su una versione del Berkeley Roofline Model, adattata per il caso FPGA, che tiene in considerazione la loro natura riconfigurabile.

Hugenomic: exploiting FPGAs as hardware accelerators in the genomic domain

Di Tucci, Lorenzo
2019/2020

Abstract

In current years, we are assisting to an ever-increase request of performance in the genomic field, where human genome research will likely transform medical practices. The information that could be obtained from the genetic profile of different species and the knowledge of molecular basis of biological processes are leading to the development of more precise therapies and novel treatments. Nonetheless, the high complexity of algorithms used to process such data, paired with the necessity to find new optimal computing architectures due to the end of Moore's law and Dennard Scaling require a computational effort that may limit improvements. Within this context, Domain Specific Architectures (DSAs) implemented on reconfigurable hardware architectures, such as Field Programmable Gate Arrays (FPGAs), have proved to be efficient in increasing algorithms performance, while keeping a relative low power profile. The main drawback with FPGA architectures relies in their programmability, that considerably limits their adoption in High Performance Computing (HPC). Many efforts have been made in easing the adoption of FPGAs, with both commercial and academic solutions that ease the programming of the device, but as of today they still require FPGA-programming skills to obtain highly peformant architectures. The main objective of this thesis is the development of Hugenomic, a framework that exploits reconfigurable hardware architectures (FPGAs), to speedup genomic data analysis. Hugenomic is designed to be easy-to-use, providing genomic researchers with little knowledge of FPGA programming, a library of the most used hardware accelerated algorithms in sequence alignment and bioinformatics, and a platform to accelerate custom codes on FPGA with no knowledge of the underneath hardware architecture. The algorithms available in the Hugenomic framework have been developed thanks to a methodology to systematically accelerate algorithms on FPGA based on an adaptation of the Berkeley Roofline Model that accounts for the non-fixed architecture of FPGAs.
PERNICI, BARBARA
DANIEL, FLORIAN
28-ott-2020
Negli ultimi anni stiamo assistendo ad un aumento delle richieste di sistemi computativi altamente performanti in ambito genomico, dove la ricerca sul genoma umano, permetterà di cambiare approccio alla pratica clinica. Le informazioni che possono essere ottenute dall'analisi dai dati genetici di individui differenti, e la conoscenza dei processi molecolari biologici stanno veicolando lo sviluppo di terapie più precise e mirate, e di conseguenza più efficaci. Tuttavia, la complessità algoritmica necessaria ad analizzare questi dati, associata alla necessità di trovare delle nuove architetture dei calcolatori a causa della fine delle leggi di Moore e Dennard Scaling, richiede una potenza computazionale che ad oggi potrebbe limitare lo sviluppo in questo settore. In questo contesto, le Architetture Specifiche di Dominio (DSA), implementate tramite architetture hardware riconfigurabili, come ad esempio i Field Programmable Gate Arrays, hanno dimostrato di essere in grado di aumentare considerevolmente le performance degli algoritmi, mantenendo un buon consumo di potenza. Il maggiore inconveniente di queste architetture, risiede nella loro difficoltà alla programmazione che ad oggi ne ha limitato l'adozione all'interno di sistemi di computazione ad alte performance (HPC). Durante questi anni, diversi strumenti sono stati proposti per facilitare la programmazione di FPGA, ma ancora oggi questi richiedono delle competenze specifiche di design hardware per riuscire ad ottenere delle architetture altamente ottimizzate. L'obbiettivo principale di questa tesi è lo sviluppo di Hugenomic, un framework che sfrutta architetture riconfigurabili (FPGA), per velocizzare il processo di analisi di dati genomici. Hugenomic è creato con l'obbiettivo di essere uno strumento di supporto facile all'uso, fornendo ai ricercatori in ambito genomico, con una minima conoscenza di programmazione FPGA, una libreria di algoritmi accelerati pronti all'uso, che possono essere utilizzati per effettuare allineamento di sequenze genomiche e per algoritmi bioinformatici, ed una piattaforma per accelerare codici proprietari su FPGA, rimanendo completamente agnostici riguardo l'architettura utilizzata. Gli algoritmi che vengono proposti all'interno della libreria accelerata di Hugenomic, sono stati sviluppati grazie ad una metodologia sistematica per accelerare algoritmi su FPGA che si basa su una versione del Berkeley Roofline Model, adattata per il caso FPGA, che tiene in considerazione la loro natura riconfigurabile.
File allegati
File Dimensione Formato  
DiTucci_Lorenzo_Thesis.pdf

non accessibile

Descrizione: Tesi
Dimensione 11.61 MB
Formato Adobe PDF
11.61 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/169429