thesis

Comparação paralela exata de sequências biológicas em plataformas híbridas de alto desempenho

Abstract

Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, Programa de Pós-Graduação em Informática, 2013.Quando uma nova sequência biológica é descoberta, suas características funcionais e estruturais devem ser estabelecidas. Para isso, a sequência é comparada com outras sequências, procurando por similaridades. A comparação de sequências é, então, uma das operações básicas em Bioinformática. O algoritmo mais preciso para executar compara- ções é o proposto por Smith-Waterman (SW), que é baseado em programação dinâmica e possui complexidade quadrática de tempo e espaço. Essa complexidade pode facilmente levar a um alto tempo de execução e uso de memória. Técnicas de processamento paralelo podem ser utilizadas para produzir resultados em menos tempo. Existem muitas versões paralelas do algoritmo SW na literatura que se executam em multicores, GPUs, FPGAs e CellBEs. Mesmo que existam algumas abordagens que executem o algoritmo SW em plataformas híbridas compostas por GPUs e multicores, elas alocam trabalho de forma xa, baseada no desempenho teórico das unidades de processamento ou nos resultados obtidos por benchmarks. Essa dissertação de Mestrado propõe e avalia uma estratégia otimizada e exível para executar o algoritmo SW em plataformas híbridas compostas por GPUs e multicores com extensões SIMD. A nossa estratégia fornece múltiplas polí- ticas de alocação de tarefas e o usuário pode escolher a que é mais apropriada para o seu problema. Propomos também um mecanismo de re-trabalho que trata situações que ocorrem quando nodos mais lentos recebem as últimas e maiores tarefas. Os resultados obtidos comparando sequências de busca com cinco diferentes bancos de dados genômicos em uma plataforma composta por 4 GPUs e 2 multicores mostram que a nossa aborda- gem é capaz de reduzir o tempo de execução em plataformas híbridas, quando comparada com soluções que utilizam apenas GPUs. Mostramos também que o nosso mecanismo de re-trabalho pode melhorar signi cativamente o desempenho na plataforma utilizada. ______________________________________________________________________________ ABSTRACTOnce a new biological sequence is discovered, its functional and structural characteris- tics must be established. In order to do that, the newly discovered sequence is compared against other sequences, looking for similarities. Sequence comparison is, therefore, one of the most basic operations in Bioinformatics. The most accurate algorithm to execute pairwise comparisons is the one proposed by Smith-Waterman (SW), which is based on dynamic programming, with quadratic time and space complexity. This can easily lead to very high execution times and huge memory requirements. Parallel processing can be used to produce results faster, reducing signi cantly the time needed to obtain results with the SW algorithm. There are many parallel versions of SW in the literature, which run in multicores, GPUs, Field-Programmable Gate Arrays (FPGAs) and CellBEs. Even though there are some versions of SW that run on hybrid platforms composed of GPUs and multicores, they assign work in a xed way, based on the theoretical performance of the processing units or in the results obtained by some benchmarks. This MsC Disser-tation proposes and evaluates a exible and optimized strategy to run Smith-Waterman applications in hybrid platforms composed of GPUs and multicores with SIMD extensions. Our strategy provides multiple task allocation policies and the user can choose the one which is more appropriate to his/her problem. We also propose a workload adjustment mechanism that tackles situations that arise when slow nodes receive the last tasks. The results obtained comparing query sequences to 5 public genomic databases in a platform composed of 4 GPUs and 2 multicores show that we are able to reduce the execution time with hybrid platforms, when compared to the GPU-only solution. We also show that our workload adjustment technique can provide signi cant performance gains in our target platform

    Similar works