Artigo Acesso aberto Produção Nacional

Aplicação de Bibliotecas para Cômputo Numérico de Equações Diferenciais em Arquitetura CUDA

2017; UNIVERSIDADE ESTADUAL DE FEIRA DE SANTANA; Issue: 21 Linguagem: Português

10.13102/semic.v0i21.2444

ISSN

2595-0339

Autores

Gledson Garcia de Oliveira,

Tópico(s)

Economic Theory and Policy

Resumo

Abordar numericamente problemas que utilizam equações diferenciais ordinárias (ODE- Ordinary Differential Equation ) tornou-se inevitável, visto que atualmente muitosdeles atingiram tal complexidade que o uso de métodos analíticos tornou-se inviável(Sandes, 2012). Um tratamento computacional a partir de bibliotecas de cômputonumérico são adequadas a esta situação, pois elas possuem uma conjunto de algoritmosprontos para encontrar uma solução de diversos casos, otimizando assim o trabalho deprodução.Atualmente, está em desenvolvimento no Laboratório de Computação de AltoDesempenho (LaCAD) da Universidade Estadual de Feira de Santana (UEFS), umtrabalho de pesquisa com bibliotecas numéricas de alto desempenho que solucionamnumericamente ODEs, usando como caso de estudo um sistema de equaçõesdiferenciais de segunda ordem que calculam a distância relativa entre um detritoespacial e um satélite. Este modelo é utilizado na astronomia para calcular possibilidadede colisões entre satélites e detritos (Jesus, 2012). Tal problema foi tratado utilizandouma biblioteca em serial de cômputo numérico e paralelizado utilizando arquiteturamulti-core de memória compartilhada com OpenMP, obtendo assim melhordesempenho de computo.Um outro caminho para tratar esta situação é utilizando paralelismo em GPUs.Por causa do altíssimo poder computacional dessa arquitetura que é naturalmenteparalela, é possível manipular enormes cargas de trabalho e acelerar o cômputo demétodos numérico com uso de uma Application Programming Interface (API). Devidoa estas características, diversos pesquisadores de todo o mundo estão desenvolvendoalgoritmos para esta plataforma, usando-a para cálculos matemáticos de propósito geral.(Buriol, 2009)O CUDA (Compute Unified Device Architecture) é um modelo de programaçãodesenvolvidos para utilizar de forma eficiente o poder das GPUs. Esta tecnologia foidesenvolvida pela NVIDIA e permite a utilização de unidade de processamento gráficos(GPUs) da NVIDIA para a computação paralela. No site da NVIDIA( http://www.NVIDIA.com.br/object/CUDA_home_br.html ) encontram-se diversaspesquisas que utilizam CUDA para uma aplicação em GPU como simulação de efeitosfísicos, exploração de gás e petróleo, processamento de imagens na área médica,pesquisa científica e muitos outros. (Buriol, 2009)Nesse sentido, este plano de trabalho objetiva demonstrar o estudo de bibliotecaspara cômputo numérico de ODEs em uma aplicação paralela em GPUs utilizando aarquitetura CUDA. Foram usados como base de teste programas já conhecidos edesenvolvidos pela equipe do laboratório para a resolução do problema da astronomia,paralelizando-os no ambiente de GPU. Nesse sentido, foi realizado uma comparaçãoentre o desempenho das aplicaões em GPU com outra plataformas de cômputo paralelojá testada, a de memória compartilhada utilizando OpenMP.

Referência(s)