PROGRAMAÇÃO PARALELA DE UM MÉTODO ITERATIVO PARA SOLUÇÃO DE GRANDES SISTEMAS DE EQUAÇÕES LINEARES USANDO A INTEGRAÇÃO CUDA-MATLAB

Lauro Cássio Martins de Paula

Resumo


Sistemas de equações lineares podem aparecer como resultado da modelagem de diversos problemas da área de matemática, engenharia e ciência da computação. O método Gradiente Bi-Conjugado Estabilizado (BiCGStab) é um método iterativo utilizado para solucionar sistemas lineares, principalmente sistemas esparsos e de grande porte. Nesse contexto, este artigo propõe uma implementação paralela do método BiCGStab para solução de grandes sistemas lineares. A implementação proposta faz uso de uma Graphics Processing Unit (GPU) por meio da integração CUDA-Matlab, onde as operações do método são executadas nos núcleos de processamento da GPU pelas próprias funções do Matlab. Tal implementação visa proporcionar um desempenho computacional superior em relação à sua implementação sequencial. Adicionalmente, comparou-se o desempenho computacional do BiCGStab com uma implementação do método Gradiente Bi-Conjugado Estabilizado Híbrido (BiCGStab(2)), proposta recentemente pelo autor, na solução de sistemas lineares aleatórios e com tamanhos variados. Os resultados mostraram que o BiCGStab paralelizado é mais eficiente na solução dos sistemas tratados. Foi possível obter ganhos de eficiência computacional de aproximadamente 5x em relação à implementação sequencial do BiCGStab. Em comparação com o BiCGStab(2), o BiCGStab paralelizado se mostrou, em média, 2x mais rápido.


Palavras-chave


Matlab; BiCGStab; Sistemas Lineares; GPU; CUDA

Texto completo: PDF

Todo conteúdo da revista está sob a licença 

Revista de Sistemas e Computação. ISSN 2237-2903