Aceleração da consulta a um grande banco de DNA forense: uma abordagem multiplataforma

Detalhes bibliográficos
Ano de defesa: 2016
Autor(a) principal: FERREIRA, Antonyus Pyetro do Amaral
Orientador(a): LIMA, Manoel Eusebio de
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
Programa de Pós-Graduação: Programa de Pos Graduacao em Ciencia da Computacao
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/24530
Resumo: A comparação de cadeias de DNA é um problema clássico em biologia molecular. Uma aplicação forense dessas comparações é usada no problema de identificação pessoal. Por exemplo, nos EUA, o sistema CODIS dispõe, hoje em dia, de 14,5 milhões de perfis de DNA armazenados em seu banco de dados. Visando acelerar essa recorrente tarefa da consulta em banco de dados similares ao CODIS, este trabalho apresenta implementações em software e em hardware digital do algoritmo de Needleman-Wunsch, que representa uma técnica global ótima para se medir a similaridade entre cadeias de DNA. Implementações em Multi-Threads, SIMD (Single Instruction Multiple Data) e OpenCL são investigadas para a plataforma dos GPPs (General Purpose Processors). A infraestrutura de OpenCL também foi usada para analisar o desempenho das GPUs (Graphics Processing Units) para essa tarefa. Adicionalmente, uma arquitetura de hardware digital customizada explorou o paralelismo dos FPGAs (Field Programmable Gate Arrays), buscando-se otimizar o uso dos recursos de hardware e a banda de memória. Os experimentos foram conduzidos usando um banco de DNA sintético com 8 milhões de indivíduos, em que cada um deles é representado por 15 sequências do tamanho de 240 nucleotídeos. Nesse caso de uso, a implementação em um único FPGA Stratix IV, rodando a 280MHz atingiu o maior speed-up de 1885x, em comparação com a implementação canônica em software. Como resultados secundários, as versões em OpenCL (GPU e GPP) e a versão SIMD obtiveram menores tempos de execução comparados com os softwares SWIPE e FASTA que são amplamente utilizados na área.