Smough: Design and evaluation of an heterogeneous architecture for large genome sequence alignment

The advent of modern DNA sequencing machines has revolutionized genome research and healthcare, enabling fast and cost-effective reading of DNA sequences from a donor's biological sample. The massive data production generated by modern sequencing machines demands high-performance software and h...

Descripción completa

Detalles Bibliográficos
Autor: Lostes Cazorla, Óscar|||0000-0001-5166-3806
Tipo de recurso: tesis de maestría
Fecha de publicación:2024
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/425739
Acceso en línea:https://hdl.handle.net/2117/425739
Access Level:acceso embargado
Palabra clave:Bioinformatics
Genomics
High performance computing
Hardware Accelerators
Heterogeneous Architecture
Domain-Specific Accelerators
Dynamic Programing
Sequence Alignment
Aceleradores de Hardware
Arquitecturas Heterogéneas
Aceleradores de Dominio Específico
Programación Dinámica
Alineamiento de secuencias
Bioinformática
Bioinformàtica
Genòmica
Càlcul intensiu (Informàtica)
Àrees temàtiques de la UPC::Informàtica::Aplicacions de la informàtica::Bioinformàtica
Descripción
Sumario:The advent of modern DNA sequencing machines has revolutionized genome research and healthcare, enabling fast and cost-effective reading of DNA sequences from a donor's biological sample. The massive data production generated by modern sequencing machines demands high-performance software and hardware accelerators to quickly analyse sequencing data without compromising the accuracy of the results. In particular, sequence alignment is a critical building block in multiple sequencing data analyses and remains a fundamental problem in computer science with diverse applications. Due to its computational complexity, sequence alignment is one of the most time-consuming steps in common genomic analysis pipelines. Classical sequence alignment implementations rely on Dynamic Programming (DP), which ultimately yields solutions with quadratic complexity. To address the demand for faster and more efficient computing for sequence data analysis, heterogeneous architectures have emerged as a promising computational approach, combining general-purpose CPUs with specialized hardware accelerators. Heterogeneous architectures balance the computational needs of different workloads by dynamically allocating tasks between general-purpose CPUs and specialized accelerators. In this context, domain-specific accelerators (DSAs) can significantly improve performance and efficiency by providing specialized hardware optimized for computation-intensive and regular tasks. Meanwhile, general-purpose CPUs can handle complex and irregular workloads while also managing the orchestration of the accelerator. In this thesis, we propose Smough, a heterogeneous architecture designed for large-scale genome sequence alignment. The proposed architecture integrates a general-purpose RISC-V CPU, extended with custom instructions for sequence alignment acceleration, and SmoughEngine, a DSA optimized for DP matrix computations. While the general-purpose CPU orchestrates CPU/DSA computations and executes irregular alignment tasks using the dedicated ISA extension, SmoughEngine performs the heavy DP computations using a tile-based approach and bit-parallel operations. Additionally, we propose a hardware-software co-design that leverages Smough's heterogeneous capabilities to solve the alignment problem efficiently. We implement the complete Smough architecture on the Gem5 simulator and propose an efficient RTL implementation of SmoughEngine's compute tile. We synthesize SmoughEngine's compute tile in a technological node. As a result, SmoughEngine's compute tile synthesis reports an area of 0.17 mm² and an estimated power draw of 588 mW, given a 256x256 elements tile. Moreover, we present a comprehensive experimental evaluation. Our results demonstrate that Smough outperforms state-of-the-art bit-parallel software methods by up to 63.3x aligning long sequences and up to 2.9x aligning short sequences. In addition, our experimental evaluation demonstrates Smough's scalability and efficiency for processing increasingly longer genomic sequences. The high performance of SmoughEngine with the achieved area- and power-efficiency makes Smough a strong candidate for real-world genomic analysis applications.