09.05.2015 Views

universidade feevale douglas neves spindler algoritmos para ...

universidade feevale douglas neves spindler algoritmos para ...

universidade feevale douglas neves spindler algoritmos para ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

12<br />

Embora diversas classificações e métodos <strong>para</strong> geração de fractais existam, alguns<br />

deles são descritos por <strong>algoritmos</strong> especialmente adequados <strong>para</strong> execuções <strong>para</strong>lelas, como é<br />

o caso dos conjuntos de Mandelbrot e de Julia, devido ao fato de que, nestes conjuntos, cada<br />

pixel da imagem pode ser processado de maneira completamente independente. Este fato,<br />

aliado ao grande volume de cálculos aritméticos necessários <strong>para</strong> exibir os detalhes destes<br />

objetos, faz com que a geração de fractais satisfaça perfeitamente os requisitos <strong>para</strong> fazer uso<br />

máximo do poder computacional das GPUs. A análise de desempenho destes <strong>algoritmos</strong><br />

utilizando modelos <strong>para</strong>lelos de programação caracteriza o foco deste trabalho.<br />

A escolha do tema deu-se com base no interesse do autor por fractais, especialmente<br />

no que diz respeito ao nível de detalhes das imagens, às formas de aparência exótica e à<br />

fundamentação matemática que envolve esta área de estudo. Este interesse foi unido à<br />

percepção de um crescente uso de modelos de programação que façam uso de dispositivos<br />

gráficos como ferramentas computacionais de propósito geral, em especial a arquitetura<br />

CUDA, sendo aplicados a problemas nos mais diversos ramos da ciência, motivando a<br />

pesquisa sobre trabalhos existentes que correlacionassem estas duas áreas. Constatou-se que,<br />

apesar de existirem diversas referências e exemplos de <strong>algoritmos</strong> na literatura sobre geração<br />

de fractais baseados em <strong>algoritmos</strong> <strong>para</strong>lelos, incluindo materiais recentes já abordando o<br />

tema com o uso de GPUs, existe uma carência de estudos que apresentem análises de<br />

desempenho e com<strong>para</strong>tivos entre os resultados obtidos a partir da execução destes <strong>algoritmos</strong><br />

com modelos baseados em GPUs e processadores tradicionais. Além disso, o fato de julgar<br />

que os dois temas – geração de fractais e programação <strong>para</strong>lela e com GPUs – unem estudos<br />

nos âmbitos da ciência e da computação consistiu em uma motivação adicional a este estudo,<br />

de modo que sejam plenamente pertinentes ao curso do autor. Assim, surgiu o problema<br />

abordado neste trabalho: qual o ganho de desempenho que pode ser alcançado ao se utilizar<br />

GPUs <strong>para</strong> a geração de fractais, em com<strong>para</strong>ção com modelos de programação tradicionais<br />

baseados em CPUs?<br />

Desta forma, o objetivo geral deste estudo é verificar o ganho de desempenho<br />

alcançado <strong>para</strong> <strong>algoritmos</strong> <strong>para</strong> geração de fractais executados em uma arquitetura many-core,<br />

neste caso utilizando uma GPU através do modelo de programação CUDA, com<strong>para</strong>ndo os<br />

resultados obtidos com o desempenho dos mesmos <strong>algoritmos</strong> sendo executados de forma<br />

sequencial e <strong>para</strong>lela em uma CPU multi-core, utilizando o modelo OpenMP. Para alcançar<br />

este objetivo geral foram definidos os seguintes objetivos específicos: a realização de uma<br />

pesquisa bibliográfica sobre fractais, programação <strong>para</strong>lela e modelos de programação<br />

utilizando GPUs como ferramentas computacionais de propósito geral; o desenvolvimento de

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!