Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors
DOCTORAT EN ARQUITECTURA DE COMPUTADORS (Pla 2012)
(English) The continuous progress of Moore’s Law in improving single-threaded performance (execution time) through clock frequency and process node improvements has slowed down due to physical limitations in silicon device physics. This has resulted in a shift towards using multicore processors to achieve performance gains. However, the use of multiprocessing is limited by Amdahl’s Law, in which the sequential parts of the applications restrict the speedups in parallel systems. Consequently, the technology industry is now emphasizing specialization and developing domain-specific accelerators to enhance performance compared to general-purpose computers. Genomics is a field that deals with the study of genes and their functions. Thanks to current and ongoing advancements, each stage of development in sequencing technologies is able to produce enormous amounts of data at an increasingly faster and cheaper way compared to its previous stage. However, the assembly and analysis of this data take extensive time on general- purpose processors, and the processor performance is growing at a much slower pace than the DNA sequencing speed. Hence, domain-specific accelerators are becoming increasingly essential in the genomics field, especially for DNA assembly. Specialized hardware computing devices designed for this specific domain can achieve significant performance improvements compared to general-purpose computers. Thus, with domain-specific accelerators, the speed of DNA assembly can keep up with the pace of DNA sequencing, allowing for quicker analysis and discoveries in the genomics field. The main goal of this thesis is to accelerate two critical applications of DNA assembly, k-mer counting and pairwise read alignment, using FPGAs and ASICs. The first contribution of this thesis targets accelerating the k-mer counting application using FPGAs and its adaptation in a genomics application called SMUFIN, a Somatic MUtation FINder. The second and third contributions focus on exploiting FPGAs for accelerating the Wavefront Alignment (WFA), a novel pairwise read alignment algorithm for aligning DNA sequences generated by different sequencing technologies. The accelerator in the second contribution is customized for short DNA sequences of up to 300 bases, which are generated by next generation sequencing technologies, while the accelerator in the third contribution is customized for long DNA sequences of up to 50K bases, which are generated by third generation sequencing technologies. The fourth contribution proposes an ASIC accelerator of the WFA algorithm and its integration in a RISC-V SoC. In all contributions, we analyze different parts of the application and port the most time-consuming parts to the accelerator. We also modify and re-design the remaining CPU parts to better adapt them to the accelerator code and finally propose efficient co-designed accelerated designs. In our first contribution, the integration of our k-mer counting accelerator improves the SMUFIN k-mer counting performance by 2.14× while consuming 2.93× less energy and 1.57× less memory compared to the baseline multi-threaded software implementation. The performance of the WFA accelerators in the second and third contributions is evaluated using one and two FPGAs. Compared to the baseline multi-threaded software implementation of the WFA running on a IBM POWER9 high-performance processor, our WFA accelerator for short reads reaches performance improvements of up to 8.8× and 13.5× with one and two FPGAs, respectively. The WFA accelerator for long reads reaches performance improvements of up to 5.6× and 9.9× with one and two FPGAs, respectively. In our fourth contribution, our ASIC WFA accelerator integrated in the RISC-V SoC reaches performance improvements of up to 1076× compared to the single-threaded software implementation of the WFA on Sargantana, the RISC-V CPU of the chip.
(Català) El progressiu desenvolupament de la Llei de Moore per a millorar el rendiment de fils individuals mitjançant la freqüència de rellotge i les millores en el node de procés s’ha vist obstaculitzat a causa de limitacions físiques. Això ha resultat en un canvi cap a l’ús de processadors multinucli per aconseguir guanys de rendiment. No obstant això, el rendiment dels processadors multinucli està limitat per la Llei d’Amdahl, que limita qualsevol acceleració per les parts sequencials del programa. En conseqüència, la indústria tecnològica està posant l’accent en la especialització i el desenvolupament d’acceleradors per millorar el rendiment d’aplicacions específiques. La genòmica és el camp que es dedica a l’estudi dels gens. Amb els desenvolupaments actu- als en tecnologies de seqüenciació es produeix una enorme quantitat de dades més ràpidament i econòmicament que el previst per la Llei de Moore. No obstant això, l’assemblatge i l’anàlisi d’aquestes dades és molt lent en processadors de propòsit general. Per tant, els acceleradors són essencials en el camp de la genòmica, especialment per a l’assemblatge d’ADN. Utilitzant hardware dissenyat per a aquest domini concret, com ara FPGAs o ASICs, els investigadors en genòmica poden aconseguir millores significatives en el rendiment en comparació amb els processadors de propòsit general. Gràcies als acceleradors, la velocitat de l’assemblatge d’ADN pot mantenir-se al ritme de la seqüenciació d’ADN, el que permet un anàlisi i descobriments més ràpids en genòmica. L’objectiu principal d’aquesta tesi és accelerar dues aplicacions crítiques de l’assemblatge d’ADN, el recompte de k-mers i l’alineament de seqüències, utilitzant FPGAs i ASICs. La primera contribució es centra en accelerar l’aplicació de recompte de k-mers utilitzant FPGAs i la seva adaptació en una aplicació de genòmica anomenada SMUFIN. La segona i la tercera contribució es centren en accelerar amb FPGAs el nou algoritme d’alineament de seqüències WFA. L’accelerador de la segona contribució està dissenyat per a seqüències curtes d’ADN de fins a 300 bases, que són generades per tecnologies de seqüenciació de pròxima generació. L’accelerador de la tercera contribució està dissenyat per a seqüències llargues d’ADN de fins a 50.000 bases, que són generades per tecnologies de seqüenciació de tercera generació. En la quarta contribució dissenyem un ASIC per accelerar l’alineament de seqüències amb WFA i l’integrem en un SoC RISC-V. En totes les contribucions analitzem diferents parts de l’aplicació i portem les parts més lentes a l’accelerador. També modifiquem i redisenyem les parts restants de la CPU per adaptar-les al codi de l’accelerador En la nostra primera contribució, el nostre accelerador de recompte de k-mers millora el rendiment del recompte de k-mers de SMUFIN en un factor de 2,14×, mentre que consumeix un 2,93× menys energia i un 1,57× menys memòria en comparació amb la implementació software de referència. El rendiment dels acceleradors d’alineament de seqüències de la segona i la tercera contribució s’avalua utilitzant una i dues FPGAs. En comparació amb la implementació software de referència de l’algoritme WFA, el segon accelerador millora el rendiment fins a 8,8× i 13,5× amb una i dues FPGAs, respectivament, i millora la eficiència energètica fins a 9,7× i 14,6× amb una i dues FPGAs, respectivament. El tercer accelerador arriba a millores de rendiment de fins a 5,6× i 9,9× amb una i dues FPGAs, respectivament, i una millor eficiència energètica de fins a 7,5× i 10,9× amb una i dues FPGAs, respectivament. En la quarta contribució el nostre accelerador ASIC integrat en el SoC millora el rendiment fins a 1076× en comparació amb la implementació software de l’algoritme WFA a Sargantana, la CPU RISC-V del xip.
(Español) El continuo progreso de la Ley de Moore en la mejora del rendimiento de un solo hilo a través de la frecuencia de reloj y las mejoras en el nodo de proceso se ha visto obstaculizado debido a limitaciones físicas. Esto ha resultado en un cambio hacia el uso de procesadores multinúcleo para lograr ganancias de rendimiento. Sin embargo, el rendimiento de los procesadores multinúcleo se ve limitado por la Ley de Amdahl, que limita cualquier aceleración por las partes secuenciales del software. En consecuencia, la industria tecnológica está enfocándose en la especialización y el desarrollo de aceleradores para mejorar el rendimiento de aplicaciones específicas. La genómica es el campo que se ocupa del estudio de los genes. Con los desarrollos actuales en tecnologías de secuenciación se produce una cantidad enorme de datos de manera más rápida y económica de lo previsto por la Ley de Moore. Sin embargo, el ensamblaje y análisis de estos datos llevan mucho tiempo en procesadores de propósito general. Por lo tanto, los aceleradores son esenciales en el campo de la genómica, especialmente para el ensamblaje de ADN. Al utilizar hardware especialmente diseñado para este dominio, como FPGAs o ASICs, los investigadores en genómica pueden lograr mejoras significativas en el rendimiento en comparación con los procesadores de propósito general. Gracias a los aceleradores, la velocidad de ensamblaje de ADN puede mantenerse al ritmo de la secuenciación de ADN, lo que permite un análisis y descubrimientos más rápidos en genómica. El objetivo principal de esta tesis es acelerar dos aplicaciones críticas del ensamblaje de ADN, el conteo de k-mers y la alineamiento de secuencias, utilizando FPGAs y ASICs. La primera contribución se centra en acelerar la aplicación de conteo de k-mers utilizando FPGAs y su adaptación en una aplicación de genómica llamada SMUFIN. La segunda y la tercera contribución se centran en acelerar con FPGAs el novedoso algoritmo de alineamiento de secuencias WFA. El acelerador de la segunda contribución está diseñado para secuencias cortas de ADN de hasta 300 bases, que son generadas por tecnologías de secuenciación de próxima generación. El acelerador de la tercera contribución está diseñado para secuencias largas de ADN de hasta 50.000 bases, que son generadas por tecnologías de secuenciación de tercera generación. En la cuarta contribución diseñamos un ASIC para acelerar el alinemiento de secuencias con WFA y lo integramos en un SoC RISC-V. En todas las contribuciones analizamos diferentes partes de la aplicación y trasladamos las partes más lentas al acelerador. También modificamos y rediseñamos las partes restantes de la CPU para adaptarlas al código del acelerador. En nuestra primera contribución, nuestro acelerador de conteo de k-mers mejora el rendimiento respecto al conteo de k-mers de SMUFIN en un factor de 2,14×, mientras consume 2,93× menos energía y 1,57× menos memoria en comparación con la implementación software de referencia. El rendimiento de los aceleradores de alineamiento de secuencias de la segunda y la tercera contribución se evalúa utilizando una y dos FPGAs. En comparación con la im- plementación software de referencia del algoritmo WFA, nuestro segundo acelerador alcanza mejoras de rendimiento de hasta 8,8× y 13,5× con una y dos FPGAs, respectivamente, y una mejora en eficiencia energética de hasta 9,7× y 14,6× con una y dos FPGAs, respectivamente. Nuestro tercer acelerador alcanza mejoras de rendimiento de hasta 5,6× y 9,9× con una y dos FPGAs, respectivamente, y una mejor en eficiencia energética de hasta 7,5× y 10,9× con una y dos FPGAs, respectivamente. En la cuarta contribución nuestro acelerador ASIC integrado en el SoC alcanza mejoras de rendimiento de hasta 1076× en comparación con la implementación software del algoritmo WFA en Sargantana, la CPU RISC-V del chip.
004 - Computer science; 575 - General genetics. General cytogenetics. Immunogenetics. Evolution. Phylogeny
Àrees temàtiques de la UPC::Informàtica