Artigo Produção Nacional

Verificação de desempenho de algoritmos de ordenação utilizando a linguagem CUDA

2010; Volume: 5; Issue: 1 Linguagem: Português

ISSN

1982-1816

Autores

Jhulia Salviano da Silva, R. L. Gazoni,

Tópico(s)

Advanced Wireless Communication Techniques

Resumo

A programacao paralela e amplamente utilizada em softwares de simulacao, onde busca-se verificar o comportamento de ambientes e materiais sem, no entanto, comprometer custos e vidas. A linguagem CUDA surge como uma proposta de melhoria de desempenho deste tipo de aplicacao sendo de baixo custo e fazendo uso dos processadores das placas graficas da familia nVidia. Verifica-se tambem a utilizacao de processadores de mais de um nucleo em computadores, porem ha ainda um numero muito reduzido de aplicacoes que suportem esta evolucao. Desta forma buscou-se verificar com este trabalho o funcionamento desta linguagem de programacao para a realizacao de ordenacao de cadeias de numeros com algoritmos ja consagrados na teoria da computacao, como Quicksort, Radixsort e Mergesort. Os algoritmos foram codificados inicialmente em Java e em seguida adaptados para a linguagem CUDA. Durante o desenvolvimento verificou-se inicialmente a dificuldade de se programar nesta linguagem, pois e um novo paradigma de programacao. Vencido este obstaculo observou-se que, conforme ja se imaginava, os resultados usando programacao paralela para cadeias muito grandes de numeros tem-se uma sensivel melhoria no tempo de resposta, entretanto, para cadeias pequenas de numeros a diferenca de resultados e praticamente imperceptivel. Um outro problema identificado e o fato da linguagem utilizada ser proprietaria e so funcionar no hardware especifico do fabricante da mesma. Trabalhos futuros poderao ser desenvolvidos, inclusive auxiliando pesquisas onde seja necessario realizar simulacoes que precisem utilizar de mais de um processador.

Referência(s)