21 mai 2021
09:00 Defesa de Mestrado Integralmente a distância
Tema
Aceleração de métodos de empilhamento sísmico com GPUs na nuvem computacional
Aluno
Gustavo Ciotto Pinton
Orientador / Docente
Edson Borin
Breve resumo
Técnicas de mapeamento do solo marítimo vêm sendo fundamentais para diversas aplicações da indústria, notadamente para a exploração de petróleo e gás. Tais técnicas são importantes principalmente pelo fato de permitirem aos geofísicos obter parâmetros, tais como a velocidade de propagação do meio, por exemplo, e modelos das regiões de interesse com precisão elevada. Por utilizarem um volume bem elevado de medições sísmicas e apresentarem muitos laços, esses métodos tendem a exigir muitos cálculos e, portanto, muito tempo de processamento quando consideramos arquiteturas tradicionais contendo poucas dezenas de CPUs. Tais características nos convidam a propor e explorar maneiras de tornar a sua execução mais rápida e eficiente. Tendo em vista o fato de que tais métodos apresentam muitos laços cujas iterações são majoritariamente independentes entre si, a paralelização, seja por meio do uso de GPUs ou de nós espalhados na nuvem computacional (ou de ambos), torna-se a alternativa mais viável e simples para acelerá-los. Sendo assim, neste trabalho, foi implementado um método de paralelização com suporte tanto a plataformas compatíveis com o framework CUDA quanto ao padrão OpenCL baseado no algoritmo genético de evolução diferencial para a procura dos parâmetros do meio de maneira a maximizar a medida de semblance para o empilhamento a partir de três modelos distintos de cálculo do tempo de trânsito, sendo eles, em ordem crescente de complexidade, o Common Mid Point, o Zero Offset Common Reflection Surface e, finalmente, o Offset Continuation Trajectory. Foi proposta igualmente uma técnica de seleção de dados para cada um destes mesmos modelos com o intuito de minimizar a quantidade de dados a ser transferida aos aceleradores a cada iteração. Finalmente, tais soluções foram integradas ao framework SPITS para a distribuição das tarefas computacionais entre os vários nós de uma nuvem. Em comparação com algumas soluções presentes na literatura para os tempos de trânsito Common Mid Point e Zero Offset Common Reflection Surface, o desempenho obtido pelo trabalho foi superior e, ao que se diz respeito a execuções em nós computacionais com múltiplas GPUs, verificamos que a propriedade de escalabilidade é respeitada, isto é, o tempo de execução cai na mesma proporção que o número de GPUs cresce. O mesmo se observa para o caso de execuções distribuídas entre vários nós de uma nuvem computacional através da utilização do framework SPITS.
Banca examinadora
Titulares:
Edson Borin | IC/UNICAMP |
Alba Cristina Magalhães Alves de Melo | CIC/UnB |
Tiago Tavares Leite Barros | CT/UFRN |
Hermes Senger | DC/UFSCar |
Suplentes:
Sandro Rigo | IC/UNICAMP |
Alexandro José Baldassin | IGCE/UNESP |