Refatoração de programas Fortran de alto desempenho
Resumo
Refatoração é uma técnica de engenharia de software que consiste em alterar a estrutura interna de uma aplicação sem que tais alterações interfiram nos resultados produzidos
pela mesma. Trata-se de uma tarefa permanentemente presente no ciclo de vida de uma aplicação e está diretamente associada às características não funcionais do software, como legibilidade e desempenho. Técnicas de refatoração são amplamente utilizadas em sistemas desenvolvidos para o paradigma da orientação a objetos e estão presentes de forma automatizada em diversas ferramentas que atuam neste paradigma. Na computação
de alto desempenho, a refatoração de código é pouco explorada, principalmente em função de que boa parte do código legado de programas de alto desempenho está escrita
em linguagens anteriores ao paradigma da orientação a objetos. A linguagem Fortran (FORmula TRANslator), largamente utilizada em aplicações de alto desempenho, possui
poucas e limitadas ferramentas para refatoração de código. Neste contexto, este trabalho explora essa deficiência através da automatização de técnicas de refatoração, utilizando-se do framework da ferramenta Photran (um plugin para edição de código Fortran integrado ao IDE Eclipse). Partindo-se da identificação de oportunidades de refatoração para código Fortran, algumas técnicas são desenvolvidas e integradas à ferramenta Photran. As técnicas automatizadas são utilizadas em aplicações escritas nesta linguagem, de forma a avaliar seu impacto no desempenho das mesmas.