Modelo e critérios de teste estrutural para programas CUDA

Detalhes bibliográficos
Ano de defesa: 2023
Autor(a) principal: Luz, Helder Jefferson Ferreira da
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Biblioteca Digitais de Teses e Dissertações da USP
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://www.teses.usp.br/teses/disponiveis/55/55134/tde-20042023-104007/
Resumo: As GPUs têm sido amplamente utilizadas na computação de propósito geral para resolver problemas em diversas áreas. Para utilizar esses processadores, é necessário adotar modelos de programação paralela, como o CUDA, que visam simplificar o desenvolvimento de aplicações de propósito geral para serem executadas em GPUs. A despeito das facilidades trazidas por esse modelo, desenvolver aplicações com CUDA não é trivial. Além disso, os desenvolvedores possuem pouca experiência na programação de aplicações paralelas, ocasionando diversos tipos de defeitos. Apesar da necessidade de mitigar defeitos em aplicações CUDA, há poucos critérios de teste estrutural para revelar defeitos desse modelo de programação. Buscando melhorar a qualidade de programas concorrentes CUDA, foi definido um modelo e critérios de teste estrutural para apoiar a atividade de teste, auxiliando na seleção de casos de teste e propiciando a revelação de defeitos. Para validar o modelo e critérios de teste propostos, foi desenvolvido a ferramenta ValiCUDA, que realiza a instrumentação e análise do programa, gerando os elementos requeridos para cada critério de teste. A ferramenta permite executar os programas e avaliar a cobertura alcançada para cada critério. Para avaliar a aplicação dos critérios de teste, foi realizado um experimento com validação estatística, buscando averiguar as métricas de custo, eficácia e strength. No experimento foram inseridos defeitos com base em uma taxonomia de defeitos para avaliar a eficácia dos critérios. Os resultados demonstraram que os critérios de teste propostos são capazes de revelar defeitos em aplicações CUDA e podem auxiliar o testador na atividade de teste deste tipo de aplicação.