Download - Devido a limitação de memoria RAM, softwares mais antigos utilizavam muito o disco rígido. Com

Transcript
Page 1: Devido a limitação de memoria RAM, softwares mais antigos utilizavam muito o disco rígido. Com

Reescrita de Código Usando Paralelismo de DadosAndré Gehring Dias de AlmeidaPIBIC/CNPQLucas Ferrari de Oliveira

Devido a limitação de memoria RAM, softwaresmais antigos utilizavam muito o disco rígido. Como desenvolvimento tecnológico, o HD se tornou umgargalo para as aplicações, sendo necessária umaadaptação dos softwares para aproveitar melhor ohardware disponível, utilizando multithreading(multiprocessamento) e estruturas de dados dinâmicas. O software otimizado foi o sRNAscanner,que busca sequencias de sRNAs dentro degenomas bacterianos.

1ª Etapa: compreensão do código e funcionamentodo software, detecção de funções mais custosas eexcesso de variáveis globais.2ª Etapa: paralelização de funções e troca dearquivos temporários (44) por estruturas de dados.Primeira versão reescrita do código.3ª Etapa: detecção e correção de erros no softwareoriginal, otimização de cálculos. Surgimento denovos resultados e segunda versão reescrita docódigo. Os resultados apresentados nos testes comprovam que a

utilização correta da hierarquia de memória, aproveitamentomáximo do hardware e boas práticas de programação,interferem significativamente no tempo de execução e até nosresultados obtidos. Pois, diminuem os possíveis erros nas conversões e leitura/escrita de dados.

B. Schmidt (2010), Bioinformatics: High PerformanceParallel Computer Architectures (EmbeddedMulti-Core System). CRC Press.

O maior entrave do software original era a leitura/escrita emarquivos e conversão de tipos de dados. No software originalo resultado final ficava comprometido devido a vazamentos de dados, que foram corrigidos. Os novos resultados encontradosestão sendo analisados por especialistas da área de biologia.