Análise de Desempenho e Consumo Energético de Aplicações Recursivas em Ambientes OpenMP, CUDA e CUDA DP - Nogueira, Angelo Gaspar Diniz; Lorenzon, Arthur Francisco; Schepke, Claudio; Kreutz, Diego (Anais do Simpósio em Sistemas Computacionais de Alto Desempenho (SSCAD); 2024: Anais do XXV Simpósio em Sistemas Computacionais de Alto DesempenhoDO - 10.5753/sscad.2024.244712, 2024)
Interfaces de programação paralela como CUDA possibilitam explorar a concorrência em GPUs. Embora o poder de processamento seja significativo neste tipo de arquitetura, a eficiência pode ser limitada em aplicações recursivas, devido à necessidade de comunicação entre GPU e CPU. Uma alternativa é utilizar a extensão Dynamic Parallelism, também conhecida como CUDA DP. Com o objetivo de investigar em maior profundidade esta extensão de paralelismo, neste artigo avaliamos o desempenho e o consumo energético de aplicações recursivas usando OpenMP, CUDA e CUDA DP. Os resultados obtidos indicam que CUDA DP viabiliza uma economia significativa na execução de aplicações com características semelhantes ao Mergesort, chegando a uma redução de até 23× no tempo de execução e 7× no consumo de energia quando comparado com as variantes CUDA e OpenMP, respectivamente. Na implementação do BFS com CUDA DP, observa-se um ganho aproximado de 5× no consumo de energia e no tempo de execução em comparação com o OpenMP. Contudo, em comparação com CUDA, há uma leve perda de 1, 6% no consumo de energia e de 5% no tempo de execução.