Estratégias de paralelização para malhas estruturadas: análise de decomposição de domínios e escolhas de geometrias - Ribeiro, Weber Guilherme Dias (2024)
Este trabalho de dissertação investiga a viabilidade e eficácia da técnica de particionamento de malhas para paralelização de simulações numéricas, com foco em modelos para reservatórios de petróleo e gás. Esta dissertação investiga os fatores que influenciam o desempenho computacional em ambientes de processamento paralelo, implementados com MPI (Message Passing Interface) em arquiteturas multicore. Este trabalho buscou estudar a otimização do desempenho de simulação em sistemas de memória compartilhada por meio da identificação de configurações de fatiamento que maximizem a eficiência do acesso a dados e a localidade espacial. O trabalho aponta empiricamente, considerando um número fixo de processos computacionais, a correlação entre desempenho do processamento paralelo e as configurações de particionamento, a estrutura matricial dos arrays de submalhas e a otimização da memória cache. Os resultados indicam que, através de geometrias adequadas, é possível maximizar o aproveitamento dessas características , resultando em melhoria do desempenho no processamento paralelo. Com base em nosso estudo de caso, para malhas numéricas computacionais, sintéticas e estruturadas, observou-se que o desempenho do processamento paralelo é mais impactado pelos custos associados ao excesso de transferência de dados entre a memória principal e a memória cache, decorrentes do percurso dos dados nos enlaces do processamento das sub-malhas, do que pelos custos relacionados à comunicação entre processos. As conclusões obtidas podem auxiliar no aprimoramento da abordagem de particionamento de malhas numéricas estruturadas, através da elucidação de melhores casos de particionamento, sustentando a importância dos fatores correlacionados neste trabalho.