Dissertação - Técnicas de tolerância a falhas baseadas em software de baixo nível para detectar SEUs em Bancos de Registradores de GPUs

Autor: Márcio Macedo Gonçalves (Currículo Lattes)

Resumo

Unidades de Processamento Gráfico (GPUs) oferecem grande desempenho computacional para processamento paralelo de dados e contam com ferramentas de desenvolvimento que dão suporte à programação e utilização desses dispositivos em aplicações de propósito geral. Portanto, GPUs são utilizadas em diversos tipos de aplicações e têm despertado o interesse de programadores para utilizá-las também em aplicações que requerem alto grau de confiabilidade, tais como aplicações automotivas, médicas e espaciais. Porém, GPUs são circuitos integrados construídos com as mais modernas tecnologias de circuitos nanométricos, apresentando altíssima densidade de transistores em sua estrutura e operando a altas frequências de clock, o que torna GPUs sensíveis a falhas induzidas por partículas de radiação. Deste modo, é imprescindível que técnicas de tolerância a falhas sejam aplicadas para detecção e correção de falhas induzidas por radiação sempre que GPUs forem utilizadas em aplicações críticas. Este trabalho apresenta uma abordagem de tolerância a falhas baseada em técnicas em software de baixo nível para detectar Single Event Upsets (SEUs) nos registradores de GPUs, o que inclui os registradores do bancos de registradores de dados, de endereço e de predicado, e os registradores de pipeline. As técnicas foram aplicadas sobre quatro algoritmos de estudo de caso, os quais foram executados em uma GPU de propósito geral (GPGPU) baseada na arquitetura NVIDIA G80. Campanhas de injeção de falhas foram feitas em simulação a nível de transferência entre registradores (RTL) nos bancos de registradores e no pipeline. Como caso de uso, foram utilizados quatro algoritmos, em suas versões originais e protegidas. Os resultados mostram uma redução em erros de até 100% e custos de tempo de execução e de ocupação de memória de até 77% e 115% superiores aos valores obtidos das aplicações originais, respectivamente.

TEXTO COMPLETO

Palavras-chave: Técnicas de softwareCiência da computaçãoTolerância a falhasGPU