Artigo Acesso aberto

Conversão Semi-automática de Algoritmos Sequenciais de Processamento Digital de Imagens para Algoritmos Paralelos na Arquitetura CUDA

2017; Faculdade Meridional (IMED); Volume: 4; Issue: 2 Linguagem: Português

10.18256/2359-3539.2017.v4i2.2046

ISSN

2359-3539

Autores

Vagner Gon Furtado, Eduardo Max Amaro Amaral, Filipe Mutz, Flavio Severiano Lamas de Souza, Karin Satie Komati,

Tópico(s)

Interconnection Networks and Systems

Resumo

Sistemas de processamento digital de imagens podem ter tempo de execução não compatíveis com o esperado pelo usuário. Uma possível solução é o uso de processamento paralelo para diminuir o tempo de execução de algoritmos de processamento de imagens. A tecnologia CUDA oferece uma interface de desenvolvimento para tirar proveito do processamento paralelo em GPUs, entretanto, possui uma alta curva de aprendizagem e exige conhecimento de recursos específicos, como sua arquitetura e tipos de memória. Este trabalho propõe uma ferramenta semi-automática para converter algoritmos de processamento de imagens sequenciais em uma versão paralela para GPU na qual o programador não precisa conhecer os detalhes da arquitetura, nem os seus comandos de programação específicos. Para tanto, o programador deve adotar a definição da API deste trabalho, seguindo os protótipos de funções e incluir, em seu código fonte, diretivas que identifiquem uma das quatro categorias de processamento: operações pixel a pixel, operações de vizinhança de pixel, operações que reduzem a imagem para um valor escalar e operações que reduzem a imagem para um vetor. O resultado final é o código fonte paralelizado na tecnologia CUDA. Foram realizados experimentos para cada uma das categorias e os resultados mostraram que a versão paralela diminui o tempo de execução para três categorias, exceto a de operações que reduzem a imagem para um vetor devido aos acessos simultâneos ao mesmo endereço de memória da posição do vetor.

Referência(s)