Detalhes bibliográficos
Ano de defesa: |
2020 |
Autor(a) principal: |
Rodrigues, Vitor Hugo Mickus |
Orientador(a): |
Souza, Samuel Xavier de |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal do Rio Grande do Norte
|
Programa de Pós-Graduação: |
PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA ELÉTRICA E DE COMPUTAÇÃO
|
Departamento: |
Não Informado pela instituição
|
País: |
Brasil
|
Palavras-chave em Português: |
|
Link de acesso: |
https://repositorio.ufrn.br/handle/123456789/30252
|
Resumo: |
A obtenção de soluções numéricas para algoritmos de inversão sísmica como Inversão Completa da Forma de Onda (FWI, do inglês Full-Waveform Inversion) e Migração Reversa no Tempo (RTM, do inglês Reverse Time Migration), pode ser acelerada por arquiteturas que possuem um alto grau de paralelismo, como unidades de processamento gráfico (GPU, do inglês Graphical Processing Units). Porém, o rápido desenvolvimento de novas arquiteturas e tecnologias dificultam a manutenção e atualização das soluções implementadas. Neste trabalho, o transpilador de código fonte aberto chamado Devito é estendido para habilitar conversão automática de kernels de diferenças finitas para arquiteturas GPU. O framework Oxford Parallel Domain Specific Language (OP-DSL) foi utilizado para construção de um novo backend para o Devito. A solução implementada fora validada nas GPUs NVIDIAR GTX Titan Z e NVIDIAR Tesla V100. O desempenho da implementação fora medido em termos de tempo de execução, e em termos de desempenho relativo através do modelo de roofline. Os testes foram feitos para diversos níveis de discretização de ordem espacial em um estêncil de propagação de onda acústica isotrópica 3D sobre uma malha de 2563. Os resultados demonstram que os kernels produzidos alcançaram aproximadamente 63% do desempenho máximo da V100 e cerca de 24% do desempenho máximo na GTX Titan Z. O estudo ainda revela que otimizar a transferência de dados entre CPU e GPU é um dos maiores desafios para alavancar o desempenho nas arquiteturas avaliadas. |